【问题标题】:ScrollView doesn't scroll when it has a subviewScrollView 有子视图时不滚动
【发布时间】:2014-02-28 15:33:27
【问题描述】:

我有一个滚动视图,我在界面构建器中添加到我的视图控制器中,我设法让它工作,所以它滚动。但是每当我在滚动视图中放置一个按钮或另一个视图时,它都不想滚动。

我在 iOS 模拟器中使用了颜色混合图层选项,并且在我尝试滚动的区域中没有任何内容与滚动视图重叠。

即使我有子视图,如何让它滚动?

【问题讨论】:

  • 如何添加子视图?你是如何设置内容大小的?
  • @Wain 我刚刚使用界面生成器添加了子视图。内容大小使用[scrollView setContentSize:CGSizeMake(320,1800)]; 设置
  • 尝试在viewWillAppear:中设置内容大小
  • @Wain 它仍然无法正常工作。可能有一些非常简单的原因导致我只是忽略了这一点。如果您有更多想法有什么问题,请发布它们。我对编程很陌生,所以它可能非常简单。
  • 记录viewDidAppear:中的内容大小

标签: ios uiscrollview


【解决方案1】:

如果我在 IB 中启用了 AutoLayout,我的 scrollViews 无法滚动,因此您可能需要对此进行调查。可能有一种方法可以通过使用适当的约束来解决这个问题。

【讨论】:

  • 谢谢!自动布局是我在post.-(void)viewDidLayoutSubviews { [scrollView setContentSize:CGSizeMake(320, 1800)]; } 中找到解决方法的问题
【解决方案2】:

记得设置你的scrollview的contentSize,如果contentSize匹配屏幕的大小,scrollView不会滚动,因为它不需要。

self.scrollView.setContentSize = mySubView.frame.size;

【讨论】:

  • 我确实使用 [scrollView setContentSize:CGSizeMake(320,1800)]; 将内容大小设置为 1800,并且当滚动视图为空时它可以工作,但当我在其中放一些东西时它就不行了。
  • 你在里面放什么样的观点?如果您嵌入具有UIScrollview(如UITableViewUIWebView)的UIView,您可能会遇到问题
  • 我试过 UIButton 和 UIView,它们都不起作用。
【解决方案3】:

你需要设置scrollViews contentSize. Normally,the contentSize is the sum of all subviewss的高度。 请阅读 UIScollView 参考。

    self.scrollView.contentSize = mySubView.bounds.size;

【讨论】:

  • 我确实使用 [scrollView setContentSize:CGSizeMake(320,1800)]; 将内容大小设置为 1800,并且当滚动视图为空时它可以工作,但当我在其中放一些东西时它就不行了。
  • 我使用了下面的代码,其余的是界面构建器的东西。 -(void) viewDidLoad { [super viewDidLoad]; [scrollView setScrollEnabled:YES]; [scrollView setContentSize:CGSizeMake(320,1800)]; } 我还在 ViewController.h 中链接了我的滚动视图。
  • 是您的按钮size bigger then scrollviews 大小,而不是内容大小。
  • 尝试在scrollView中添加一个UIView。
猜你喜欢
  • 2022-11-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多