【问题标题】:Cannot click button on UIScrollview Objective - C无法单击 UIScrollview 目标上的按钮 - C
【发布时间】:2016-11-21 09:40:33
【问题描述】:

无法检测到单击 UIScrollview 上的某些 UIButton。我在图像描述中描述了我的问题。

代码:

- (void)viewWillLayoutSubviews { 
    [super viewWillLayoutSubviews]; 
    CGFloat scrollViewHeight = 0.0f; 
    for (UIView* view in _vContain.subviews) { 
        scrollViewHeight += view.frame.size.height; 
    } 
    [_svContain setContentSize:(CGSizeMake(_svContain.frame.size.width, scrollViewHeight + 50))]; 
}

【问题讨论】:

  • 你的意思是最后一个按钮不起作用?
  • 使用setContentView方法设置scrollView的滚动范围直到最后一个uicomponent。
  • 是的。单击时最后一个按钮不起作用。我为 UIScrollView 添加了 contentsize
  • @DuyDoan 显示一些关于您的问题的代码..
  • - (void)viewWillLayoutSubviews{ [super viewWillLayoutSubviews]; CGFloat 滚动视图高度 = 0.0f; for (UIView* view in _vContain.subviews) { scrollViewHeight += view.frame.size.height; } [_svContain setContentSize:(CGSizeMake(_svContain.frame.size.width, scrollViewHeight + 50))]; }

标签: ios objective-c uiscrollview


【解决方案1】:

请设置ContentSize 的UIScrollView。 这样做:

scroll.contentSize = CGSizeMake(ScreenWidth, btn.frame.origin.y+btn.frame.size.height +10);

设置您的UIScrollview 高度,就像我在您的图片中显示的那样。

【讨论】:

  • 我为 UIScrollView 添加了 contentsize 但无法解决任何问题
  • 确保您的滚动视图高度在底部视图 Y 轴处结束。你的底视图不能与你的滚动视图重叠
  • Suresuper viewWillLayoutSubviews]; CGFloat 滚动视图高度 = 0.0f; for (UIView* view in _vContain.subviews) { scrollViewHeight += view.frame.size.height; } [_svContain setContentSize:(CGSizeMake(_svContain.frame.size.width, scrollViewHeight + 50))];
  • 请降低您的滚动视图高度
  • 请检查现在我更新了我的答案,我希望它会工作
猜你喜欢
  • 1970-01-01
  • 2011-09-17
  • 2020-09-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-18
相关资源
最近更新 更多