带内容视图的UIScrollView
我一直在尝试为用户注册表创建一个UIScrollView但没有成功。 我正在使用自动布局,滚动视图内的所有字段都是静态的。 由于通常模糊的高度问题,我在滚动视图中添加了一个UIView,将约束设置为滚动视图的边距并居中对齐。 之后,我在故事板中添加了内容视图中的所有字段。
内容字段按照您的预期设置其约束,但是当我到达最低字段并将底部约束设置到内容视图的底部时,一切都会中断。
我被Xcode要求设置一些视图的优先级,当我这么说时,内容视图大小保持不变,视图缩小。
我试图不放置最后一个底部约束并通过代码调整内容视图的大小,但高度不会按原样resize。
我正在寻找一个很好的解决方案,在故事板和自动布局中做到这一点。
更新:我添加了一个低优先级的底部约束,但内容滚动视图未展开以显示所有字段。
您正在使用自动布局,因此内容视图的大小由约束决定。 按照以下步骤提供适当的约束:
- 在主视图中拖动滚动视图,并根据屏幕截图提供与超级视图(主视图)对齐的顶部,底部,前导和尾随约束。
- 获取包含内容的视图并在“滚动视图”中拖动。 并根据屏幕截图提供约束中心X,中心Y,顶部,底部,前导和尾随与滚动视图对齐
将所有元素放在内容视图中,这是滚动视图的子视图,并提供相对于其上方元素的Top约束,以在元素之间创建相等的空间(例如,标签,按钮等)(确保为X提供所需的约束) -位置)
最后一个元素是“注册帐户”按钮,确保相对于superview(内容视图)提供相对于country和Bottom约束的Top Constraint,并根据屏幕截图更改Top或Bottom约束的优先级,否则会出错。
-
添加和设置ScrollView(UIScrollView)
-
使用子视图添加和设置ContentView(UIView)
! 将ContentView Width设置为View Width
- 设置所有子视图约束
-
View1应该绑定到ContentView的顶部
-
View4应该绑定到ContentView的底部
-
所有SubView(View1,View2,View3,View4 ……)必须具有彼此之间的高度和距离
Ps在您的情况下,如果iOS> 9.0,您可以用UIStackView替换ContentView