デリゲートを使用する場合、通常は UINavigationController 内の次のビューコントローラーに、自分自身をデリゲートとして設定することだけを伝えます。これを prepareForSegue メソッドで行います。
- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
[segue.destinationViewController setDelegate:self];
}
これは常にうまく機能しています。ただし、navController の 2 つのインデックスまたは 2 つのビューに対して、自分自身をデリゲートとして設定することを viewController に伝えようとしています。setDelegate メソッドを送信したい viewController レシーバーを定義できると考えられるあらゆる方法を試しましたが、何も機能していないようです。これが私が試した一例です:
DateSelectViewController *dsvc = [[DateSelectViewController alloc] init];
[dsvc setDelegate:self];
メソッドが委任されることはありません。他のすべての可能性を除外したため、デリゲートの設定方法に関係していることはわかっています。どうすればこれを正しく行うことができますか?