在我的应用程序中,我使用的是故事板,这就是它的设置方式:
UIViewController - >推送到 - > UIViewController - >推送到 - >的UIViewController
我已经完成了所有工作,但我无法弄清楚我是如何在firstViewController和thirdViewController之间进行委托的。我已经看过如何通过故事板(设置destinationView委托)来完成它,但我不知何故需要设置第三个ViewControllers委托而不是第二个委托。因为中间有ViewController,我不知道如何做到这一点。任何回应都表示赞赏。谢谢你。
答案 0 :(得分:2)
你是说你想让VC1成为VC2和VC3的代表吗?
在VC1 prepareForSegue中,你可以按照你的建议去做:
VC2 *myVC2 = segue.destinationViewController;
myVC2.delegate = self;
在VC2 prepareForSegue中,您也可以按照您的建议间接执行:
VC3 *myVC3 = segue.destinationViewController;
myV3.delegate = self.delegate;
标题如下所示:
VC1.h
@protocol VC23Delegate <NSObject>
- (void)doSomethingForVC2;
- (void)doSomethingForVC3;
@end
VC2.h
@protocol VC23Delegate;
@property(weak,nonatomic) id<VC23Delegate> delegate;
VC3.h
@property(weak,nonatomic) id<VC23Delegate> delegate;