我在 x=16 ,y=20
位置放置了一个大小为 w=140, h=33
的 UIView
并应用了这些约束.
无论方向或屏幕尺寸如何,我都希望 UIView
显示在屏幕的一半上。
但结果是纵向的
在横向模式下,UIView
消失了。
为什么我会出现这种行为,在 autolayout
中, View 宽度和高度是根据约束计算的。
最佳答案
我设法弄清楚如何准确地实现您正在寻找的东西。 一旦你弄明白了,这很简单。首先,清除所有约束。像这样将 UIView 放置在整个屏幕上:
然后,将约束条件添加到 Superview 中。
编辑:现在您需要使用乘数 2 将方框大小减半。
然后,转到 Size inspector,选择 Trailing Space to Superview 并单击 edit。您将看到编辑屏幕,您将在其中看到乘数属性。将其设置为 0.5,瞧,它将始终位于屏幕中间。
还考虑添加一个高度约束,就好像您没有压缩 View 一样。这很简单。 View 将自动更新,您将获得以下最终结果:
希望对你有所帮助,朱利安
关于ios - 需要有关自动布局的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31342447/