Autolayout不会在iOS 8应用程序(Interface Builder)中提供预期的输出/行为

时间:2015-07-17 08:32:27

标签: ios swift autolayout interface-builder nslayoutconstraint

我正在尝试在iOS 8的故事板中实现特定的布局。理想情况下,我的应用程序看起来像这样:

enter image description here

在Xcode中,我的设置如下:

enter image description here

对于最重要的VC(尝试手动执行,但总是出错),我的约束如下:通过单击“添加缺失约束”获得:

enter image description here

当我在iOS模拟器中运行它时,它显示以下内容:

enter image description here

我知道“添加缺失约束”方法不是解决问题的正确方法,但我尝试了许多不成功的方法。

我的主要问题是:如何让我的VC看起来像所需的输出(帖子中的第一张图片)?我实际上在另一个应用程序中得到了我想要的布局,但它总是在控制台中显示“无法同时满足约束”。我追踪了错误,它来到了这个VC(我在其他应用程序中有一堆其他的VC)。此外,如果Apple认为此类错误足以拒绝您向应用商店提交的应用,我想知道这是一个不容置疑的问题。

另外,我想知道什么是一些好书/来源我可以学习Autolayout(因为它现在是我在app dev循环中的弱点)?似乎youtube或在线上的所有教程都涵盖了基本内容,但并不像这种布局那么复杂。

非常感谢你的帮助!

干杯!

2 个答案:

答案 0 :(得分:1)

您可以添加约束 1.蓝色视图为顶部,前导,尾随和高度 2.对于标签栏底部,前导,尾随&高度 3.& fianlly你给表视图约束为leading,trailing,top&底

答案 1 :(得分:0)

根据您的图片,您可以设置以下约束

Pin Leading,Trailing,Top space以及高度

enter image description here

与第二个视图相同的约束

enter image description here

TableView将固定在顶视图和底部标签栏以及前导和尾随空格

enter image description here

Tabbar将固定前导,尾随和底部空间

enter image description here

我希望您的布局没有约束问题,如下所示

enter image description here

[edit]如果您的视图嵌入Tab栏控制器,除了必须使用下面的项目固定UITableView底部空间外,所有内容都保持不变。