自动布局约束未正确放置容器视图
Posted
技术标签:
【中文标题】自动布局约束未正确放置容器视图【英文标题】:autolayout constraints not placing container view properly 【发布时间】:2013-06-18 19:55:20 【问题描述】:第一张图片显示了底部容器视图的约束。 “超级视图的底部空间”设置为 0。无论屏幕高度如何,我都希望容器锚定到屏幕底部。
我不想限制从底部容器视图到屏幕顶部的距离,但是 Xcode 会自动创建一个(到超级视图的顶部空间 = 508)并且不会让我删除它。为什么这样做?我的容器视图的位置完全由其他 3 个约束及其高度(60 像素)定义。
更重要的是,当我运行应用程序时,容器视图不适合屏幕。它被部分切断。即使“bottom space to superview”被限制为0,容器视图的底部也被切断了。这是怎么回事?
【问题讨论】:
【参考方案1】:有两件事正在发生。首先,您的容器视图的高度已设置,但未固定,因此自动布局强制顶部空间设置为超级视图。你需要固定它的高度,然后你可以删除顶部空间,这个问题应该会消失。
其次,顶部的状态栏迫使您的视图向下 20 像素,这会将其底部推离屏幕。对此有多种修复方法,但我确信现在您知道问题所在,您会想出一个。
【讨论】:
以上是关于自动布局约束未正确放置容器视图的主要内容,如果未能解决你的问题,请参考以下文章
具有自动布局的 iOS UIScrollView 未正确居中