【问题标题】:How can a superclass trigger an action in a subclass in objective-c?在objective-c中,超类如何触发子类中的动作?
【发布时间】:2012-10-19 23:34:29
【问题描述】:

所以我有一个标签栏控制器,其中每个标签都是从我创建的超类扩展而来的 UITableView。这个超类(显然)扩展了 UITableViewController。

每个 UITableViewController 代表一个选项卡式视图,并有自己的模型来提取特定于每个 TableView 的数据,因此我需要将这些方法和变量与超类分开。

但是,我已经在我的超类中实现了“拉动刷新”,并希望通过拉动刷新时调用的更新方法来刷新子类保存的数据。

我基本上必须减少我的损失并在我的标签栏中的每个 UITableViewController 中单独实现 pull-to-refresh,还是有办法让更新命令调用每个 UITableViewController 中固有的方法(但实现方式不同)我的标签栏?

【问题讨论】:

    标签: objective-c uitableview superclass


    【解决方案1】:

    在你的公共超类中,创建一个方法

    -(void)onRefresh {
    }
    

    什么都不做。当需要触发子类中的动作时调用此方法。

    在您的每个子类中,实现一个具有相同签名的方法。这些方法会在超类调用时被调用

    [self onRefresh];
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-11
    相关资源
    最近更新 更多