如何找到比例常数的最终值
我有一个约束来设置视图的高度。如何找到比例常数的最终值
约束条件是比例高度约束。
我想使用约束来计算高度,我想知道什么是视图高度。
要做什么的API?
我知道我可以手动找到它自己以及使用公式,但我并不想这样做,
比方说高度约束父视图的58%,它有10个定值,然后是什么通过限制分配给视图
总高度视图的高度将是:
0.58 * parentView.frame.height + 10
没有建立parentView的高度,直到自动布局上运行,所以如果你是做这个计算,你会在覆盖的时候这样做。
由于您对自己的计算不感兴趣,因此您可以简单地读取自动布局应用约束条件后运行的替代viewDidLayoutSubviews
中的视图的最终帧高度。
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
// read final view size here
print(myView.frame.height)
}
基本上我想更新一些用户界面约束...所以如果我这样做甚至...它会触发无尽的循环调用 –
什么是你想更新的约束?也许有一种方法可以编写它,以便自动布局为您完成工作。 – vacawama
基本上我有一个视图里面有多个视图...基于视图的可见性,父视图的大小将会决定。所以我想决定大小? –
不清楚你问这里 – chirag90
什么,我想知道通过propotional约束产生的限制已被更新后 –
阅读相关视图的'frame'财产高度值。你需要重写'UIViewcontroller'的方法来捕捉我认为的时机。 –