UIScrollView中的UITableView在滚动后没有响应第一次点击
Posted
技术标签:
【中文标题】UIScrollView中的UITableView在滚动后没有响应第一次点击【英文标题】:UITableView in UIScrollView not responding to first tap after scroll 【发布时间】:2014-09-30 18:38:49 【问题描述】:我遇到了一个奇怪的问题,我的UITableView
在它包含的滚动视图完全滚动后没有正确响应点击。我说得对,因为它 在触摸单元格时突出显示该行,并在抬起手指时取消突出显示它,但是 没有 调用 tableView:didSelectRowAtIndexPath:
。
滚动后等待多长时间并不重要。表格似乎在滚动后进入某种元状态,第一次点击被忽略。随后的点击工作正常,直到您再次滚动并使其回到损坏状态。
现在我知道在技术上不支持手动将 tableView 放入 scrollView,但我需要在没有 tableView 内置 scrollView 的典型页眉/页脚行为的情况下将整个表格作为一个可见滚动。嵌入的 tableView 禁用滚动。
我的问题是,有谁知道是什么导致了这种状态,有什么我可以手动设置或覆盖以使 tableView 脱离这种损坏状态,以便它正确响应对其单元格的第一次点击?
我已经在包含滚动视图和嵌入的 tableView 上玩弄了 cancellableContentTouches
和 delaysContentTouches
属性,但无济于事。无论这些设置如何,它似乎都会发生。
【问题讨论】:
UITableView inside UIScrollView not receiving first tap after scrollling的可能重复 【参考方案1】:作为answered here,正确的解决方案(如果您不遵守规则)是在所有嵌入式tableViews 上将scrollEnabled
设置为YES
。这可以让他们正确处理触摸。但请务必在嵌入式视图上将bounces
设置为NO
,以避免出现奇怪的滚动行为。
【讨论】:
以上是关于UIScrollView中的UITableView在滚动后没有响应第一次点击的主要内容,如果未能解决你的问题,请参考以下文章
UITableView 中 UIScrollView 中的 ContentOffset 问题
UIScrollView中的UITableView,滚动不起作用