【问题标题】:Fill UIView with color based on percentage根据百分比用颜色填充 UIView
【发布时间】:2017-01-23 03:25:22
【问题描述】:

我在 UIViewController 的 UIView 中有一个 UIView,其高度 = 149.0 和宽度 = 123.5。

我正在用颜色填充这个 UIView,并且我正在根据来自休息 url 的百分比响应设置要填充的颜色的高度。

如何使用上述尺寸填充整个视图以 100% 和不同的值。

任何帮助将不胜感激。谢谢

【问题讨论】:

  • 你的意思是你想要一个自定义进度条?
  • 不,我不想要进度条。我目前也可以填充 UIView,因为 UIView 的高度是 149.0,对于值 100,它会在中途填充 UIView。所以我希望它为高度 149.0 填充 100%

标签: ios swift uiview


【解决方案1】:

如果你想在你的uiview 中填充多种颜色,那么你需要继承UIView 并覆盖它的drawRect 类似的方法,

 override func drawRect(rect: CGRect) {


    var percentage = CGFloat()  //can declare as instance variable or globally which you get from web service and set it's value!!



    percentage = 0.5

    let upperRect = CGRectMake(rect.origin.x, rect.origin.y, rect.size.width, rect.size.height*percentage)

    let lowerRect = CGRectMake(rect.origin.x, rect.origin.y + (rect.size.height * percentage), rect.size.width, rect.size.height * (1-percentage))

    UIColor.redColor().set()
    UIRectFill(upperRect)
    UIColor.greenColor().set()
    UIRectFill(lowerRect)



}

【讨论】:

  • 我只填充一种颜色
  • 然后只设置一次颜色!这只是演示!你应该根据你的要求操作代码!!!
猜你喜欢
  • 2021-09-19
  • 1970-01-01
  • 2019-10-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多