【问题标题】:Why is my UIView within UIScrollView not scrolling?为什么我在 UIScrollView 中的 UIView 不滚动?
【发布时间】:2014-05-04 09:30:30
【问题描述】:

我正在尝试在 UIScrollView 中为 UIView 设置滚动。

我的视图层次结构是:

UIView (Controller) > UIScrollView > UIView(从现在开始我将调用这个 subView)

我已经使用 IB 来设置布局。我将 subView 的顶部设置为与 UIScrollView 框架的顶部内联。 subView 与 UIScrollView 框架一样宽,并超出 UIScrollView 框架的高度。

在子视图中,我有 UILabels(也使用 IB 设置)。为了测试滚动,我有一个标签,它只是在 UIScrollView 框架的底部边框上方偷看。当我运行应用程序时,这个标签理想地能够滚动到视图中,但是,没有滚动,标签只是在 UIScrollView 框架结束的地方被截断。

在 ViewController.m 我有以下内容:

- (void)viewDidLoad
{
self.scrollView.contentSize = self.scrollSubView.frame.size;
}

其中 scrollSubView 是 UIScrollView 中的 UIView。

我错过了什么(做错了)阻止滚动工作?

感谢您提供的任何帮助。

【问题讨论】:

  • 记录self.scrollSubView.frame.size.height 值并检查它是否真的大于滚动视图的高度。内容较短时,UIScrollView 不会滚动。

标签: ios objective-c uiview uiscrollview


【解决方案1】:

可能的问题

自动布局已打开,它不会让滚动视图按要求工作。

可能的解决方案

  1. 检查情节提要的自动布局并取消勾选。

  2. 如果不想关闭,可以关注这个短视频 使用自动布局处理滚动非常棒。 :)

UIScrollView with autolayout on

【讨论】:

  • 视频似乎成功了。感谢您的帮助:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-11-21
  • 2013-10-27
  • 2018-06-27
  • 1970-01-01
  • 1970-01-01
  • 2012-05-03
  • 2014-05-05
相关资源
最近更新 更多