我有一个简单的程序,其中包含UIScrollView
和一个UITextField
。我约束UIScrollView
在它的所有四边都有0个空格,我认为这会让它填满整个屏幕。我将文本字段限制为边缘的标准空间:
但是当它运行时,它会这样做:
我看到technical note,但我还不明白。
如果我给出宽度= 280约束,该字段将填满屏幕,但这违背了自动布局的精神。我希望它能够适应屏幕的宽度,而不是硬编码到故事板中的280pt宽度。怎么做?
以下是布局错误:
答案 0 :(得分:0)
我找到了自己问题的答案。
答案包含在技术说明中,但我认为没有详细解释。这篇博客文章帮助了我:http://spin.atomicobject.com/2014/03/05/uiscrollview-autolayout-ios/
总结:在文本字段上放置一个宽度约束来关闭IB错误,但是然后检查"占位符,在构建时删除"约束的复选框(在IB中的属性检查器中)。然后,您可以在视图控制器的viewDidLoad
方法中以编程方式添加更好的约束。在这种情况下,我想要将文本字段的左右边缘连接到滚动视图的超视图边缘(以及屏幕边缘)的约束。你显然不能在IB中制定这样的约束。有了这两个限制,即使屏幕旋转,它也能正常工作。