В UINavigationController это контроллер ребенкаНужна помощь в отношении передачи данных от ребенка к родителю в 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?
Я попытался создать слабую ссылку, но не знаю, как использовать делегат для передачи данных от дочернего к родительскому?
Покажите нам, как вы назначили делегата на ваш родительский VI ew контроллер. – Zen
@ Zen ParentViewController –
Я имел в виду, как свойство pVC соответствует 'childDelegate'. то есть, если есть что-то вроде 'self.childDelegate = self.pVC;' или что-то подобное, сообщающее 'pVC', что он должен действовать, когда« childDelegate »отменяется? – Zen