iOS UITableViewController静态tableView不滚动

时间:2017-02-19 16:31:35

标签: ios iphone uitableview uiscrollview iqkeyboardmanager

我有一个Xcode 8项目,每当我实例化UITableViewController时,我根本无法滚动内容。我已经确定:

  • userInteractionEnabled设置为TRUE(在tableView上)
  • scrollEnabled设置为TRUE(在tableView上)
  • 没有覆盖的视图,其中userInteractionEnabled设置为TRUEUITapGestureRecognizer cancelsTouchesInView设置为TRUE
  • 没有将clipsToBounds设置为FALSE并且可能阻止滚动的小视图
  • 表格视图高度不大于内容的
  • 弹跳+垂直弹跳设置为TRUE
  • 我正在使用IQKeyboardManager。我确保这个错误不是由库引起的,故意禁用它。
  • 这也与方向无关。我尝试过仅限肖像,并且我不断更改方向以检查结果。

有趣的是,如果我从其中一个静态单元格中点击UITextFieldIQKeyboardManager会将内容向下滚动一点。因此表视图是可滚动的,但我不能通过正常滑动来完成。

此外,我认为这可能与我的特定班级有关,也许我做错了什么......但我甚至试图在第一次初始化时实例化空白UITableViewController应用程序的5个部分,但它没有工作。

请记住所有这些信息,我该怎么办?我使用的是iOS 10和iPhone 6s。

2 个答案:

答案 0 :(得分:1)

如果我正确解释您的问题,请确保打开弹跳和弹跳。弹跳会导致您的表视图不仅仅是在溢出时滚动。但无论何时。

Near the Bottom is the Bounce/bounces option.

答案 1 :(得分:0)

最后,经过3天以上的日常调试,我发现了问题......

这绝对是我遇到的最棘手的错误,但似乎Cocoapods的力量伴随着责任。我导入了以下库:

https://github.com/shaps80/iMessageStyleReveal

不幸的是,库本身打破了表视图滚动。当我调试实际视图时,更难以注意到库中添加的手势识别器,因为它有一个通用名称并且cancelTouchesInView设置为FALSE。实际问题在扩展内部,其中UITableView方法被覆盖。

删除它,一切都恢复正常。呼。