iOS 表格 View 滚动问题

标签 ios uitableview

我在 View Controller 中有两个 View 。 tableview 嵌入在 bottom view 中,segue 会立即触发到该 tableview。所以我在屏幕顶部显示一个静态 View ,在底部显示一个表格 View 。问题是在 tableview 中滚动没有响应。它仅记录下半部分的点击。基本上在 tableview 的中间有一条不可见的线,应用程序没有在它上面注册任何东西(它只注册那些击中我提到的第一个 View 的水龙头,它比 tableview 高得多)所以用户只能滚动如果他只触及桌面 View 的下半部分。 Tableview 正常运行并显示有效数据

image of what's going on

有什么想法吗?

最佳答案

您是否检查了 View Hierarchy Debugger(调试->View Debugging->Capture View Hierarchy)?要寻找的典型问题是:

  1. tableView 上方的透明 View 吞噬了触摸事件。要解决此问题,请执行以下操作之一:

    • 删除有问题的透明 View
    • 通过将有问题的透明 View 移到 tableView 后面来修复 View 层次结构
    • 修复布局以确保透明 View 的底部 anchor 不在 tableView 的顶部 anchor 下方

TableView Behind Transparent View

  1. 表格 View 延伸到它的父 View 之上而没有被剪裁。触摸事件在 View 层次结构的根部接收并转发到适当的 subview 。在这种情况下,底部 View 边界外的触摸事件将不会发送到底部 View 。这就是底部 View 只能转发在其范围内发起的触摸事件的原因。要解决此问题,请执行以下操作之一:
    • 在容器 View 上启用clipsToBounds(当然,这只会隐藏表格中不可交互的部分)
    • 修复布局以确保 tableView 完全在其父 View 的范围内

enter image description here

关于iOS 表格 View 滚动问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43572655/

相关文章:

iphone - ZUUIRevealController 泄漏内存?

ios - 可以使 UIGestureRecognizer 在 AVPlayerViewController 中工作吗?

iphone - 在 iphone 上查找已安装的应用程序列表

ios - 从单个 UICollectionViewCell 转到不同的 UITableViewControllers

ios - 如何重复数组中的数据开始数据到结束数据并再次在 IOS objective-c 中开始数据

ios - 如何从包含字典的数组中检索和显示 TableView 中的数据?

swift - UITableViewController : Scrolling to bottom with dynamic row height starts animation at wrong position

ios - 无法在没有参数的情况下调用类型 'CustomDetailView' 的初始值设定项

ios - 如何在 ios 中设置 tableView 单元格标题?

ios - 如何知道 UITableView.visibleCells 的索引路径?