我希望我的UITextField
用尽大部分屏幕。我已经尝试在文本字段上设置约束,但这不起作用。我正在使用iPhone 5s和6进行测试。
在iPhone 5s上获得合适的尺寸会在iPhone 6的UITextField
的每一侧留下大的空间;当我在iPhone 6上设置所需尺寸时,UITextField
对于iPhone 5s上的屏幕来说太大了。
我认为在设置滚动视图等时使用的原理相同。这些UITextField
位于滚动视图中,我对使用不同设备的滚动视图没有任何问题。
我已经尝试过尺寸以适应但这会使文字字段太小。我会提供代码,但我在Interface Builder中完成了所有这些操作。
这些字段位于我的scrollView的contentView中。
我不介意Objective-C或Swift答案。
答案 0 :(得分:2)
问题是,自动布局会根据内容自动为您计算出scrollView的内容大小。如果你没有告诉它contentView的宽度,它必须通过scrollView中项目的约束来解决这个问题。即使您的textViews固定在scrollView的左侧和右侧,您也必须指定它们的宽度,以便Auto Layout可以计算出scrollView内容的宽度。要解决此问题,请将contentView添加到scrollView,该scrollView将成为scrollView中的单个顶级项目。所有其他项目将作为contentView的子视图添加。
将contentView添加到scrollView。将其左,上,右和下边缘固定到scrollView。将其宽度限制为等于scrollView的宽度。为此,打开“文档大纲视图”,控制从滚动视图包含的视图拖动到滚动视图,然后从弹出窗口中选择“等宽”。限制其高度足以容纳您的所有内容。这将允许scrollView仅垂直滚动。
将textViews尾随和前导约束到contentView。它们的宽度会自动伸展以填充每部手机的空间。
答案 1 :(得分:0)
假设您有单个文本字段。然后,您必须应用以下约束来实现所有约束:
宽度和高度限制是最重要的一个。当满足所有约束时,线条将变为蓝色。试试这个。