デリゲートが特定のメソッドを実装しているかどうかを確認する if ステートメントがあります。
if ([[self delegate] respondsToSelector:@selector(didFinishSettingNotificationOnDialog:)])
{
[self.delegate didFinishSettingNotificationOnDialog:self withNotification:notification];
}
ただし、If ステートメント内でコードが実行されません。これらのオブジェクト間で動作する他のデリゲート呼び出しがあり、if ステートメントを削除して単に呼び出すと
[self.delegate didFinishSettingNotificationOnDialog:self withNotification:notification];
それ自体で動作します!
私のデリゲートは正しく実装されています:
- (void)didFinishSettingNotificationOnDialog:(NotificationDialogView *)dialogView withNotification:(NotificationContext *)setNotification{
NSLog(@"Notification is: %@", setNotification);
}
それで、私は何を間違っていますか?