【问题标题】:UITableView in UIView in UIScrollView. When scrolling tableview don't scroll scrollview tooUIScrollView 中的 UIView 中的 UITableView。滚动表格视图时也不要滚动滚动视图
【发布时间】:2013-03-05 20:24:19
【问题描述】:

我在 UIScrollView 内的 UIView 内有一个 UITableView。 问题:当我滚动/拖动表格视图时,滚动视图也会滚动。
我需要的是表格视图不要将滚动传递给滚动视图。当我直接滚动它时,我还需要能够使用滚动视图。 我怎样才能做到这一点? 干杯

【问题讨论】:

    标签: uitableview uiview ios6 uiscrollview


    【解决方案1】:

    我在 tableview 上使用“hitTest”修复了它。

     - (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
    

    如果事件源自 tableview,我禁用父级的滚动视图滚动。 而且,当 tableview 的滚动结束 (scrollViewDidEndDragging) 我重新启用父级的滚动视图滚动。

    这个接缝可以正常工作。

    【讨论】:

      【解决方案2】:

      为您的 tableview 的滚动视图(即您的视图控制器)设置一个委托

      tableView.scrollView.delegate = self;
      

      然后使用这两个调用

      – scrollViewDidScroll:
      – scrollViewDidEndDragging:willDecelerate:
      

      禁用和重新启用外部滚动视图的 scrollEnabled 属性

      【讨论】:

      • 它不起作用。由于某种原因,在调用 tableview 的 scrollViewDidScroll 之前首先调用父滚动视图。
      • 你的滚动视图是干什么用的?表格视图总是在滚动视图的底部吗?
      • 是的,它总是在底部,固定的高度和宽度。我通过在 tableview 上使用 hittest 来解决这个问题。感谢您的帮助。
      猜你喜欢
      • 2021-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-27
      • 1970-01-01
      • 2013-12-30
      相关资源
      最近更新 更多