【发布时间】:2026-02-09 18:05:02
【问题描述】:
我正在编写 UITableView 的自定义子类。我需要这个对象本身是它自己的数据源和委托,然后这个子类将有它自己的数据源和委托。这样做主要是为了让我可以拦截对数据源的调用并委托并可能在将它们发送到实际数据源之前对其进行扩充。
我的班级是这样定义的。
CustomTableView : UITableView<UITableViewDelegate, UITableViewDataSource> {
...
id customDataSource;
id customDelegate;
}
当我尝试设置我的数据源和委托时出现问题。
我想覆盖 uitableview 的属性:
- (void)setDataSource(id<UITableViewDataSource>)ds {
[super setDataSource:self]
customDataSource = ds;
}
基本上,我想告诉父类(UItableView)将数据源设置为self。在我修改它们之后,我会将所有回调转发到 customDataSource。
[super setDataSource:self] 不会崩溃,但数据源永远不会被设置。有没有人有任何想法?谢谢
【问题讨论】:
标签: uitableview ios