1

デリゲートが特定のメソッドを実装しているかどうかを確認する 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);
}

それで、私は何を間違っていますか?

4

1 に答える 1