ios - 需要有关自动布局的帮助

标签 ios objective-c autolayout

enter image description here

我在 x=16 ,y=20 位置放置了一个大小为 w=140, h=33UIView 并应用了这些约束.

enter image description here

无论方向或屏幕尺寸如何,我都希望 UIView 显示在屏幕的一半上。

但结果是纵向的

enter image description here

在横向模式下,UIView 消失了。

为什么我会出现这种行为,在 autolayout 中, View 宽度和高度是根据约束计算的。

最佳答案

我设法弄清楚如何准确地实现您正在寻找的东西。 一旦你弄明白了,这很简单。首先,清除所有约束。像这样将 UIView 放置在整个屏幕上:

View

然后,将约束条件添加到 Superview 中。

Constariants

编辑:现在您需要使用乘数 2 将方框大小减半。

然后,转到 Size inspector,选择 Trailing Space to Superview 并单击 edit。您将看到编辑屏幕,您将在其中看到乘数属性。将其设置为 0.5,瞧,它将始终位于屏幕中间。

Superview

还考虑添加一个高度约束,就好像您没有压缩 View 一样。这很简单。 View 将自动更新,您将获得以下最终结果: enter image description here

希望对你有所帮助,朱利安

关于ios - 需要有关自动布局的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31342447/

相关文章:

iOS:防止 .cacheDirectory 中的文件在存储空间已满警告时被删除

ios - 无法运行有关 PJSip 的 iPhone 模拟器

ios - AFNetworking 2.0 如何获取下载进度?

ios - 通过手势调整UITableViewCell的大小

android - 为什么我得到 cannot resolve symbol 'R' ?

objective-c - 两个childViewController之间的通信

objective-c - Swift 字符串格式与 Objective-C

ios - 如何以编程方式根据纵向/横向更改布局约束?

swift - 使用动态 header 大小 UICollectionView 时出现 UIViewAlertForUnsatisfiableConstraints 错误

iphone - 将文档同步到 iCloud