【问题标题】:iOS UITableViewController static tableView does not scrolliOS UITableViewController静态tableView不滚动
【发布时间】:2017-07-08 20:39:27
【问题描述】:

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

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

有趣的是,如果我从其中一个静态单元格中点击UITextField,IQKeyboardManager 会将内容向下滚动一点。所以表格视图是可滚动的,但我不能通过正常的滑动来做到这一点。

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

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

【问题讨论】:

    标签: ios iphone uitableview uiscrollview iqkeyboardmanager


    【解决方案1】:

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

    【讨论】:

    • 不幸的是,我忘了说我也检查了这个:(
    • 你能把你的表格视图属性发布在一张图片中吗?
    • 你的代码呢?(使用你的确切属性滚动对我有用)
    • 这与代码无关。我禁用了“viewDidLoad”、“viewWillAppear”等所有代码。结果相同。哎呀,我什至创建了一个空的 UITableViewController,没有附加任何类,将它设置为应用程序的根视图控制器,它不是滑动!我相信这是项目内部的一个全球性问题..
    • 尝试创建一个新项目。也看看这是否有帮助stackoverflow.com/questions/13793505/…
    【解决方案2】:

    终于,经过3天多的日常调试,终于找到了问题所在……

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

    https://github.com/shaps80/iMessageStyleReveal

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

    删除它,一切都恢复了。唷。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-07
      • 2014-01-07
      相关资源
      最近更新 更多