UINavigationController では、これは子コントローラーです
.h
@protocol childProtocol <NSObject>
-(void)childMethod:(NSArray*)params;
@end
@property (strong, nonatomic) id<childProtocol>childDelegate;
@property (weak, nonatomic) parentVC *pVC;
.m
if([self.childDelegate respondsToSelector:@selector(childMethod:)]) {
[self.childDelegate performSelector:@selector(childMethod:) withObject:self.arry];
}
これは私の親コントローラーです
.m
-(void)childMethod:(NSArray *)params {
// some work
}
...
childVC *cVC = [[childVC alloc]init];
cVC.pVC = self;
しかし、 childMethod: が呼び出されていないので、インターネットで検索して、この投稿 UINavigationControllers: How to pass value to higher (parent?) controller in stack? を取得しました。
弱い参照を作成しようとしましたが、デリゲートが子から親にデータを渡す方法がわかりませんか?