为什么自动布局限制不起作用?

时间:2014-05-21 12:39:25

标签: ios nsautolayout

我在IB中设置约束,如like shown in this image

但是当我在iPhone4上运行应用程序时,它会显示like this image

为什么在iPhone4屏幕上没有正确显示最后三个按钮?我的约束中是否有任何错误? 编辑: - 这是我的视图层次结构: -  UITabbarControlle -> UINavigationController -> UIViewController和标签栏控制器为rootviewcontroller

编辑: - 仅供参考,屏幕上没有任何约束效果(基本上自动布局对我不起作用)。

3 个答案:

答案 0 :(得分:3)

你设计了4英寸的按钮,而且你所有的按钮都没有足够的空间。

执行此操作的一种方法是在视图控制器的视图上放置滚动视图,并在滚动视图上添加按钮。您必须在滚动视图上添加约束,以固定在每一侧(没有宽度) /高度)。

之后抓住所有按钮并在每侧和尺寸上添加约束,因此它们将被修复

另一方面,如果你有足够的空间让所有按钮适合3.5'如果没有任何顶部/底部边距,您可以在UIView中添加按钮(而不是滚动视图)。将按钮放在视图中并在该视图上设置固定的宽度/高度。中心视图,它将保持其大小(两个屏幕尺寸内都有按钮)

答案 1 :(得分:0)

您的约束中存在问题,您必须更新它们。

您可以按照下图所示进行操作:

enter image description here

完成后,您会看到,按钮下方的橙色线条变为蓝色。

我希望对你有帮助!

答案 2 :(得分:0)

您的观点可能在UIScrollView之内,这将扩展您的总内容高度。它与视口的绝对高度无关。

但是,你期待什么?如果您的理论方法有效,那么您的3个按钮将覆盖到下一个按钮。

您需要做的是将所有按钮相互连接,并为视图提供顶部和底部布局的顶部和底部约束。您可能需要将视图调整为全屏而不是扩展到底部。

提示:只要某些内容为“黄色”,您就需要添加更多约束。