我有三个 viewControllers
.当我在第三个 View Controller 上时,我想向第一个发送消息。我正在使用 protocol
并尝试设置 delegate
为了这。
viewControllerC.h
@protocol ViewControllerCDelegate
- (void)performAction;
@end
...
@property (nonatomic, strong) id<ViewControllerCDelegate> delegate;
viewControllerA.h
@interface ViewControllerA : UIViewController <ViewControllerCDelegate>
viewControllerA.m
...
- (void)performAction {
NSLog(@"Action was performed");
}
所以唯一的问题是,我无法设置
delegate
从第三到第一。如何设置viewControllerC's
委托(delegate)给 viewControlerA
?这是一张图片来描述它:
最佳答案
您必须将 A Controller 传递给 B Controller ,以便在创建时将其设置为 C 的委托(delegate)。有点乱。
在这种情况下,尽管使用通知模型可能更有意义,其中 Controller A 监听操作已在 C 上完成的 NSNotification。
关于ios - 将委托(delegate)从第三个设置为第一个 viewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30902268/