我有一个委托 ExampleDelegate,我有一个 UITableViewController 和详细 UIViewController 都实现了该委托:
@interface ClassA : UITableViewController <ExampleDelegate>
和:
@interface ClassB : UIViewController <ExampleDelegate>
并委托:
@protocol ExampleDelegate <NSObject>
-(void)notifyUser;
@end
@interface Example : NSObject
@property (nonatomic, retain) id delegate;
-(id)initWithDelegate:(id<ExampleDelegate>) delegate;
@end
起初,我从 ClassA 初始化委托的实例并且它工作正常,但是一旦我导航到 ClassB,当我回到 ClassA 时,我也在为委托创建一个实例,委托实例从 ClassB 中保留,所以ClassB 中的函数总是被调用,而不是 ClassA 的函数。谁能指出我做错了什么以及如何让它发挥作用?