代理人を「仕事」にさせるのに苦労しています。
ClassA が UINavigationController を介して ClassB をスタックにプッシュすると機能しますが、ClassB が別の ClassC によってプッシュされると、ClassB は (ClassA で) デリゲート メソッドを呼び出しません。
ClassA 内のこのメソッドは機能します。
- (void)openViewController:(NSString *)title:(int)dataType:(NSArray *)currentData {
ClassB *nextController = [[ClassB alloc] initWithNibName:@"ClassBView" bundle:nil];
nextController.delegate = self;
nextController.title = title;
nextController.dataType = dataType;
nextController.currentData = currentData;
nextController.hidesBottomBarWhenPushed = YES;
[self.navigationController pushViewController:nextController animated:YES];}
ClassC からこのメソッドを取得して、ClassA を ClassB のデリゲートとして適切に指定するにはどうすればよいですか?
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
ClassB *nextController = [[ClassB alloc] initWithNibName:@"ClassBView" bundle:nil];
nextController.delegate = ??????????
nextController.title = [self.tableData objectAtIndex:indexPath.row];
nextController.dataType = self.dataType;
nextController.currentData = [NSArray arrayWithArray:[self.dictionary objectForKey:[self.tableData objectAtIndex:indexPath.row]]];
nextController.hidesBottomBarWhenPushed = YES;
[self.navigationController pushViewController:nextController animated:YES];}
任意の支援に感謝します。乾杯。