我的视图层次结构是
UIView
UIScrollView
UIView1
-->UIView1.1
-->UILabel
-->UILabel
-->UILabel
-->UILabel (bottom)
我正在使用Autolayout。我已经尝试了所有的方法,并搜索了很多。我确实将底部UILabel连接到UIView1的底部布局,并将其优先级设置为750(最低的)。我几乎已经尝试了在这个论坛上和所有地方所说的一切,因为每个人都在说同样的事情。
我也在UIView1.1中动态添加一个视图。 我不知道为什么这不起作用。 Scrollview无法正确滚动。 请帮我。我被困在这3天了。
答案 0 :(得分:11)
使这项工作实际上非常简单。您不需要将所有标签放入额外的视图中。而且您不必自己设置contentSize
。自动布局将为您完成此操作。
您必须确保拥有以下内容:
就是这样!
这是一个显示约束的草图:
如果您在自动布局中使用 Masonry 或 SnapKit ,则会在代码中添加这些约束:
topView.snp_makeConstraints { (make) -> Void in
make.top.equalTo(0)
make.left.equalTo(0)
make.width.equalTo(scrollView)
}
label1.snp_makeConstraints { (make) -> Void in
make.top.equalTo(topView.snp_bottom)
make.left.equalTo(0)
make.width.equalTo(scrollView)
}
label2.snp_makeConstraints { (make) -> Void in
make.top.equalTo(label1.snp_bottom)
make.left.equalTo(0)
make.width.equalTo(scrollView)
}
label3.snp_makeConstraints { (make) -> Void in
make.top.equalTo(label2.snp_bottom)
make.left.equalTo(0)
make.width.equalTo(scrollView)
make.bottom.equalTo(0)
}
答案 1 :(得分:5)
ReportsJPanel
最后这些线条救了我。
答案 2 :(得分:0)
工作尝试了。
如果你没有使用autolayout,那么只把它放在 viewDidLoad ():
[_mainScroll setContentSize:CGSizeMake(320, 2000)];
或者如果您使用的是自动布局,请按照以下步骤操作:
首先给出scrollview top,bottom,leading和trailing的约束。现在再看一个视图并给出与之前给出的scrollview相同的约束。
不要忘记为该视图修复高度和宽度等于主父视图提供额外约束。
或强>
请注意这一点。