【问题标题】:Become UIScrollViewDelegate delegate for UITableView成为 UITableView 的 UIScrollViewDelegate 代表
【发布时间】:2023-03-12 13:50:02
【问题描述】:

我有一个UITableView 实例变量。我希望能够将我的视图控制器注册为我的UITableViewControllerUIScrollViewDelegate。我已经试过了

tableView.delegate = self;

但是当滚动时,我的方法

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView            
                  willDecelerate:(BOOL)decelerate

不要被叫。有什么建议吗?

【问题讨论】:

    标签: iphone cocoa-touch uitableview delegates uiscrollviewdelegate


    【解决方案1】:

    现在UITableViewDelegate 符合UIScrollViewDelegate

    (我写这个答案是因为很多人会在谷歌上找到这个页面..)

    【讨论】:

    • 我不认为是现在,就是这样。
    • 现在可能是因为在 2009 年 UITableViewDelegate 不符合 UIScrollViewDelegate ;)
    【解决方案2】:

    UITableViewDelegate 也将实现UIScrollViewDelegate 协议。

    【讨论】:

      【解决方案3】:

      这是官方不支持的。 UITableViewUIWebView 不公开其内部管理的滚动视图。

      您可以进入子视图层次结构并进行未记录的调用,但不建议这样做,因为它是官方禁止的,并且如果底层(未记录的)API 发生更改,可能会在未来的操作系统版本下中断。

      【讨论】:

      • 我担心是这样的。谢谢。
      • 正如 santoni 下面的回答所示,UITableViewDelegate 符合 UIScrollViewDelegate(这可能在 SDK 版本中发生了变化?),这意味着所有 UIScrollViewDelegate 消息都将传递给 UITableView的代表。
      • 一个uitableview就是一个uiscrollview
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多