我正在尝试根据服务器数据更新进度条。因此,如果收到的值(以%为单位)小于90,则进度条应为绿色,否则应为红色。
LeveledCompaction
上述代码工作正常,范围0.01 - 0.05除外。此范围之间的任何值始终仅显示0.05的进度。 如果我注释掉更新颜色的代码,那么它似乎工作正常。
我正在更新主线程上的所有内容。此外,我观察到从viewDidLoad和viewWillAppear调用此方法不会影响进度。
同样的问题发布在下面的链接 - UIProgressView doesn't update <=0.5 value after Changing ProgressTintColor
但是,它还没有回答。
任何帮助解决此问题的人都将不胜感激。
答案 0 :(得分:0)
试试这个
DispatchQueue.main.async {
if (value >= 90) {
progressBar.progressTintColor = UIColor.redColor()
} else
{
progressBar.progressTintColor = UIColor.greenColor()
}
progressBar.setProgress(value, animated : true)
}