无论我尝试什么,UIScrollView 都不会滚动
UIScrollView not scrolling no matter what I try
我有一个屏幕,其中主视图有一个 UIScrollView
,其中包含一个 UIView
,后者又包含 3 个垂直放置的 UIView
,我已经相应地设置了约束,尝试在 viewDidLoad
和 viewDidLayoutSubviews
中设置 contentSize
,都无济于事。我已经创建了一个示例项目来解决我在 https://github.com/modsoussi/ScrollViewTest 遇到的问题。
我很惊讶 Interface Builder 没有显示约束错误或警告...
使用自动布局时,滚动视图的 内容 定义 contentSize
。这意味着内容(在您的情况下,单个 UIView
持有 3 个较小的 UIView
s)必须对其超级视图(滚动视图)的顶部、前导、尾随和底部有约束... 和它必须有高度和宽度。
在您的故事板中,删除 "Center Vertically" 约束,并向 "content" 视图添加高度约束(为 1000)。然后从代码中删除 scrollView.contentSize = ...
行。 运行 应用程序,滚动应该没有问题。
我有一个屏幕,其中主视图有一个 UIScrollView
,其中包含一个 UIView
,后者又包含 3 个垂直放置的 UIView
,我已经相应地设置了约束,尝试在 viewDidLoad
和 viewDidLayoutSubviews
中设置 contentSize
,都无济于事。我已经创建了一个示例项目来解决我在 https://github.com/modsoussi/ScrollViewTest 遇到的问题。
我很惊讶 Interface Builder 没有显示约束错误或警告...
使用自动布局时,滚动视图的 内容 定义 contentSize
。这意味着内容(在您的情况下,单个 UIView
持有 3 个较小的 UIView
s)必须对其超级视图(滚动视图)的顶部、前导、尾随和底部有约束... 和它必须有高度和宽度。
在您的故事板中,删除 "Center Vertically" 约束,并向 "content" 视图添加高度约束(为 1000)。然后从代码中删除 scrollView.contentSize = ...
行。 运行 应用程序,滚动应该没有问题。