我正在并排布置两个UILabel
,我希望正确的标签能够占据所需的空间。像这样:
------------------------------
|[left label ][right label]|
------------------------------
我正在使用拥抱和压缩来实现这一点,并且它可以正常工作。
我很惊讶,当我删除拥抱和压缩配置(即保留默认配置)时,hasAmbiguousLayout
不会返回true
。
正如预期的那样,我得到随机结果,比如正确的标签占用的空间超过了所需的空间,或者左边的标签占用了所有的空间而没有留下正确的标签。
为什么hasAmbiguousLayout
没有返回true
?
我是从viewDidLayoutSubviews
打来的:
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
if view.hasAmbiguousLayout() {
print("Layout is ambiguous!")
view.exerciseAmbiguityInLayout()
} else {
print("Layout is not ambiguous") // I'm always getting this
}
}
谢谢