ios - 如何覆盖 UITableView 的功能?

标签 ios swift uitableview

我想在 func scrollViewDidScroll(_ scrollView: UIScrollView) {...} 上做一些事情,这样每个 UITableView 都会运行这个覆盖函数。

我该怎么做?我可以通过扩展或子类来实现吗?

我是编程新手。任何帮助将不胜感激。

最佳答案

scrollViewDidScrollUIScrollViewDelegate 的委托(delegate)方法,UITableView 继承自 UIScrollView 。这不能通过扩展或继承 UITableView 来实现,因为它是一个委托(delegate)方法。

您只能在您的 UITableView 委托(delegate)类中覆盖此函数。

如果您正在使用 UIViewController。创建基类BaseViewController

class BaseViewController: UIViewController {
    public func scrollViewDidScroll(_ scrollView: UIScrollView) {

    }
}

如果你正在使用 UITableViewController,创建一个基类 BaseTableViewController

class BaseTableViewController: UITableViewController {
    public override func scrollViewDidScroll(_ scrollView: UIScrollView) {

    }
}

现在只需将所有 Controller 父类(super class)更改为 BaseViewControllerBaseTableViewController

希望对您有所帮助。

关于ios - 如何覆盖 UITableView 的功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44557474/

相关文章:

ios - 尝试以特定尺寸显示弹出 Controller

ios - UINavigationController 从屏幕顶部偏移,就像电话应用程序在通话时所做的那样

ios - 无法重新提交应用内购买以供审核

ios - 如何将约束转换为 VFL

swift - 在 JPEG 图像上绘制一条简单的线

ios - Xcode 12.4 为模拟器和设备构建,但使用 Pods-MYAPP-frameworks.sh : line 131: ARCHS[@]: unbound variable 归档失败

swift - 带有 SwiftUI 内容的 UITableViewHeaderFooterView 自动插入安全区域

ios - 如何使用表头 View 中的 exclusionPaths 正确调整 textview 的大小

ios - 应用程序关闭后不保存用户默认值

iphone - 如何计算具有不同分辨率的 UIImage 的裁剪大小(矩形)