UINavigationController に埋め込まれた UITableViewController を提示する親 UIViewController があり、そこからいくつかの行 (私の場合は people name の行) を選択し、それらを mutableArray に追加して UIViewController に送り返す必要があります。
通常のプロトコルを試しました:
@class TableViewController
@protocol TableViewDelegate <NSObject>
-(void)sendFrom:(TableViewController *)controller theList:(NSMutableArray *)list;
@end
...
@proprety (nonatomic, strong) id<TableViewDelegate> delegate;
...
次に、TableViewController.m で ... -(IBAction)dissmisController:(id)sender { [self.delegate sendFrom:self theList:_theListOfPersons]; [自己却下ViewControllerAnimated:YES完了:nil]; }
次にViewController.h
#import "TableViewController.h"
次に、デリゲートを追加します
<TableViewDelegate>
次に、プロトコルのメソッドを実装します
-(void)sendFrom:(TableViewController *)controller theList:(NSMutableArray *)list
{
NSLog(@"the list of persons is %@", list);
}
アプリを実行する前の最後の作業は、デリゲートをセグエ [[segue destinationViewController] setDelegate:self]; に設定することです。
問題は、デリゲート メソッドが呼び出されないことです。また、TableViewController.m viewDidLoad をチェックインすると、次のようなデリゲート
NSLog(@"%@", self.delegate);
答えは: (ヌル)
誰でもこれを説明できますか?