【发布时间】:2014-01-19 13:35:46
【问题描述】:
我正在编写 10 个单独的实用程序类,用于从服务器填充查找表,每个查找表一个实用程序类。
我注意到所有 10 个都非常相似,并且我相信我可以创建一个抽象类来完成 90% 的工作,并且可以在从子类实例化它时将参数传递给它。
问题在于,当超类想要引发一个委托事件时,无论它是在哪个子类中继承的,它都将具有相同的名称,因此任何拥有该子类的类或控制器都需要一种方法来识别超类正在触发哪个子类来自的代表。
有什么方法可以知道哪个子类拥有被解雇的委托的超类?
例如 我有一个名为“动物”的超类,它有一个代表事件“动物想要食物” 子类“狗”和“猫”都继承自“动物” 一个名为 'farmyard' 的 NSObject 实例化了 'dog' 和 'cat' 类,并使自己成为 'dog' 和 'cat' 的代表。 当 'dog' 继承的 'Animal' 实例触发 'Animal want food' 时,这将由 'farmyard' 对象接收。 - “农场”如何知道是“狗”还是“猫”触发了“动物想要食物”委托事件?
【问题讨论】:
-
但是怎么做呢?在农家院内我需要知道,这样我才能正确回应。在活动中,我需要喂狗或猫,我需要知道哪一个能够做到这一点。
标签: ios objective-c delegates