我正在使用Swift语言以及Spring和Struts进行定位来管理iOS中的应用程序。由于某些原因,我必须在其中使用UIScrollView
。但是我找不到使用“ Springs and Struts”布局定位技术实现的正确方法。
我将视图height
设置为“ FreeForm”,然后将Content View
高度设置为1000 px,但所有内容均以相同的屏幕尺寸显示。
答案 0 :(得分:2)
使用Struts and Springs是no longer recommend,您应该使用AutoLayout。
但是,如果您必须:
1)禁用/取消选中Files Inspector
中的View Controller中的“使用自动布局”,这还将禁用特征变化。
2)在视图控制器的Size Inspector
中将“模拟大小”更改为“固定”。确保在视图控制器的Attributes inspector
中将“大小的模拟指标”设置为“推断”。
3)添加视图并设置自动调整大小蒙版的“撑杆和弹簧”,以告诉视图如何在其父视图中进行缩放。
4)将视图的所需框架矩形设置为相对于其超级视图的位置。
您将必须手动设置滚动视图的高度,因为没有其他视图可以约束框架并允许自动调整大小。为此,请在加载视图控制器后设置scrollView的内容大小。请参见viewDidAppear(_:)
。否则,布局引擎无法确定按钮顶部与其超级视图顶部之间的垂直间距(滚动视图)。
同样,不建议这样做,您应该考虑迁移到AutoLayout。
答案 1 :(得分:1)
“ FreeForm”的设置仅适用于界面生成器,因此您可以在滚动视图中完整查看所有内容,但不会反映在您的应用程序上。
scrollview的高度取决于其内容,因此您需要从上至下添加元素,以使其变大。