我在iPhone 4和iOS模拟器(4S)上测试我的应用程序。标签定位在模拟器上很好,但在设备上显示不正确。
我在标签上使用以下约束:
可能导致这种情况发生的原因是什么?
答案 0 :(得分:1)
您遇到了一些冲突的约束。让我们逐步执行您对标签应用的规则:
Align Center X to Superview
这只是将超级视图的中心X与标签的中心X对齐。这里没问题。
Bottom space to: SIGN UP <= 50
此约束适用规则&#34;使我的标签底部距离SIGNUP大约50个点。&#34;
问题在于您的上一个约束:
Top Space to: Top Layout Guide >= 5
此约束添加了以下规则:标签的顶部空间必须至少距离顶部布局指南5个点。
自动布局识别它不可能同时满足底部空间和顶部空间约束,因此它会破坏您的底部约束,从而导致不良行为。
您的上限约束仍然有效,因为在这种情况下,顶部布局指南之间的空格大于5.
尝试将顶部布局约束设为&lt; =,或降低标签的内容抗压优先级。
答案 1 :(得分:0)
答案就在于你的约束。
它表明顶部空间可以大于或等于5.底部空间可以小于或等于50.这就是它显示这种行为的原因。
在我的建议中编辑约束:
Top Space equal to 5
Bottom Space less than or equal to 50