如何以编程方式快速制作 UIProgressBar
Posted
技术标签:
【中文标题】如何以编程方式快速制作 UIProgressBar【英文标题】:How to make UIProgressBar programmatically in swift 【发布时间】:2016-06-08 06:45:18 【问题描述】:我想在 swift 中以编程方式制作 UIProgressBar?
这段代码有什么问题?
override func viewDidLoad()
super.viewDidLoad()
let progressView = UIProgressView(progressViewStyle: .Bar)
progressView.center = self.view.center
progressView.frame = CGRectMake(0,0,50,20)
progressView.translatesAutoresizingMaskIntoConstraints = false
progressView.setProgress(0.5, animated: false)
self.view.addSubview(progressView)
【问题讨论】:
你说translatesAutoresizingMaskIntoConstraints = false
,但后来没有添加任何约束。只需添加约束来指示您想要的位置。如果您查看视图调试器,我敢打赌这个视图不是您所期望的......
谢谢@Rob,它工作正常。
【参考方案1】:
let progressView = UIProgressView(progressViewStyle: .Bar)
progressView.center = view.center
progressView.setProgress(0.5, animated: true)
progressView.trackTintColor = UIColor.lightGrayColor()
progressView.tintColor = UIColor.blueColor()
view.addSubview(progressView)
你需要做这个类型代码,你不需要设置框架。
【讨论】:
【参考方案2】:你需要:
-
添加你的progressView的子视图
设置约束,因为您使 translateAutoresizingMaskIntoConstraints = false
【讨论】:
【参考方案3】:斯威夫特 5:
let progressView = UIProgressView(progressViewStyle: .bar)
progressView.center = view.center
progressView.setProgress(0.5, animated: true)
progressView.trackTintColor = .lightGray
progressView.tintColor = .blue
view.addSubview(progressView)
【讨论】:
以上是关于如何以编程方式快速制作 UIProgressBar的主要内容,如果未能解决你的问题,请参考以下文章
如何以编程方式在 Xcode 中快速设置 UIPageViewController 的过渡样式?