带有自适应布局的UIScrollView

时间:2015-06-07 16:24:14

标签: ios uiscrollview adaptive-layout

我在UIView中有一个UIScrollView,在滚动视图里面有另一个UIView(容器视图)。在自适应布局之前,我固定滚动视图以适应外部视图并设置容器视图的宽度和高度(也固定在滚动视图上)。通过这种方式,我可以垂直滚动视图。

enter image description here

现在,通过自适应布局,由于屏幕尺寸不同,我无法设置宽度...我必须设置哪种约束?我能想到的唯一解决方案是以编程方式将宽度设置为屏幕尺寸......

2 个答案:

答案 0 :(得分:2)

来自UIScrollView and Autolayout

  

UIScrollView类通过更改其边界的原点来滚动其内容。要使其与“自动布局”一起使用,滚动视图中的顶部,左侧,底部和右侧边缘现在表示其内容视图的边缘。

     

滚动视图子视图的约束必须导致填充大小,然后将其解释为滚动视图的内容大小。(这不应与{{ 1}}用于自动布局的方法。)要使用自动布局调整滚动视图的框架大小,约束必须明确关于滚动视图的宽度和高度,或者滚动视图的边缘必须绑定到其外部的视图子树。

在您的情况下,“容器视图”必须具有非模糊的大小,与滚动视图的大小无关。最简单的方法是添加高度和宽度约束,并将constant属性设置为您想要的值。

因此,如果您希望“容器视图”为屏幕宽度,请添加宽度约束并在运行时将其常量设置为当前屏幕宽度。

答案 1 :(得分:0)

将容器视图的宽度限制为等于根级视图的宽度。删除容器视图的硬编码宽度约束。

相关问题