iOS tableview滚动问题

时间:2017-04-23 14:56:28

标签: ios uitableview

我在viewcontroller中有两个视图。 tableview嵌入在底部视图中,segue立即被触发到该tableview。所以我在屏幕顶部显示静态视图,在底部显示tableview。问题是在tableview中滚动没有响应。它只在下半部分注册水龙头。基本上在tableview中间有一条不可见的线,app不会在它上面注册任何东西(它只记录那些击中我提到的第一个视图的水龙头,远远高于tableview)所以用户只能滚动如果他只触及桌面视图的下半部分。 Tableview正常运行并通过

显示有效数据

image of what's going on

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您是否检查了视图层次结构调试器(Debug-> View Debugging-> Capture View Hierarchy)?要寻找的典型问题是:

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

    • 删除有问题的透明视图
    • 通过移动tableView
    • 后面的违规透明视图来修复视图层次结构
    • 修复布局以确保透明视图的底部锚点不在tableView的顶部锚点下方
  2. TableView Behind Transparent View

    1. 表格视图在其超级视图上方延伸,而不会被剪裁。触摸事件在视图层次结构的根处接收并转发到适当的子视图。在这种情况下,底部视图边界之外的触摸事件将不会发送到底部视图。这就是为什么底部视图只能转发源自其边界内的触摸事件的原因。要解决此问题,请执行以下操作之一:
      • 在容器视图上启用{{1}}(当然,这只会隐藏非交互式表格的一部分)
      • 修复布局以确保tableView完全在其superview的范围内
    2. enter image description here