在我的项目中,我使用的是 AutoLayOut,有一个 UIView,它是 subview 主视图,我将其宽度(使用约束)设置为等于 2 :3 superView 的宽度,其高度等于其 View 。我需要 View 是圆形的,所以我将它的 cornerRadius 设置为 heightOfView/2。 View 的高度和宽度的纵横比为 1:1。我已经将该约束的导出创建为
@IBOutlet weak var circleHeight: NSLayoutConstraint
现在我想访问它的高度或宽度,但我不是 gwtting 实际值,
circleHeight.firstItem.frame.width
我正在获取我从 Storyboard 中存储的值,有一些我遗漏但无法弄清楚的东西
最佳答案
您可以为这个 UIView 创建 IBOutlet,它应该是圆形的。 然后在 viewDidLayoutSubviews() 方法中,您可以读取其高度并将其设置为圆形:
override func viewDidLayoutSubviews() {
let viewHeight = CGRectGetHeight(yourView.frame)
yourView.layer.cornerRadius = viewHeight / 2
yourView.layer.masksToBounds = true
}
关于ios - 从 NSLayoutConstraint 获取高度值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38185930/