0

iPhoneアプリケーション内のNSNotificationセンターを簡単に利用しようとしていますが、この場合は何か問題があるようです。特定のメッセージに関連付けられたオブジェクト、または少なくともオブジェクトへの参照を取得できるという印象を受けましたが、次のサンプルコードを使用すると、警告が表示されます。

「NSNotificationセンターが-objectに応答しない可能性があります」


- (void)addNewBookmark:(NSNotificationCenter *)notification {
    Bookmark *newBookMark = (Bookmark *)[notification object];
        //Do some stuff with the bookmark object
}

実際、コードをコンパイルして実行すると、基本的に、オブジェクトのコンテンツに対して何もしようとはしませんが、実際には実行されません。単に無視されます。

郵便番号は次のとおりです。


- (IBAction)save:(id) sender{
    //Sending the message with the related object
    [[NSNotificationCenter defaultCenter]
     postNotificationName:@"addNewBookmark"
     object:bookmark];
}

ブックマークオブジェクト自体は単なる辞書です。また、「userInfo」引数を使用してブックマークオブジェクトを渡してみましたが、結果は同じでした。

これをどのように行うべきですか?私は何が間違っているのですか?

4

1 に答える 1

2

メソッドは、 NSNotificationCenteraddNewBookmark:ではなくNSNotificationを受け入れる必要があります。

NSNotificationは-object期待どおりに応答する必要があります。

通知センターは、誰が(センターではなく)通知を聞いて送信しているかを追跡することを担当するオブジェクトです。

于 2010-06-14T05:10:19.707 に答える