UIScrollView 中的 UIView 中的 UITableView。滚动表格视图时也不要滚动滚动视图
Posted
技术标签:
【中文标题】UIScrollView 中的 UIView 中的 UITableView。滚动表格视图时也不要滚动滚动视图【英文标题】:UITableView in UIView in UIScrollView. When scrolling tableview don't scroll scrollview too 【发布时间】:2013-03-05 20:24:19 【问题描述】:我在 UIScrollView 内的 UIView 内有一个 UITableView。 问题:当我滚动/拖动表格视图时,滚动视图也会滚动。 我需要的是表格视图不要将滚动传递给滚动视图。当我直接滚动它时,我还需要能够使用滚动视图。 我怎样才能做到这一点? 干杯
【问题讨论】:
【参考方案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 来解决这个问题。感谢您的帮助。以上是关于UIScrollView 中的 UIView 中的 UITableView。滚动表格视图时也不要滚动滚动视图的主要内容,如果未能解决你的问题,请参考以下文章
在 UIScrollview 中的 UIView 上的屏幕中的框架
如果其他 UIView 带有隐藏选项,如何使下 UIView 固定到 UIScrollView 中的上 UIView?