0

非常に奇妙な問題。

私は次のコードを持っています:

NSDictionary* notificationUserInfo = [pNotification userInfo];
NSManagedObject* newShoppingFilter = [notificationUserInfo valueForKey:@"shoppingListFilter"];
self.shoppingListFilter = newShoppingFilter;
NSLog(@"%@ tapped", [newShoppingFilter valueForKey:@"name"]);

何らかの理由で、self.shoppingListFilter=newShoppingFilterが変数を設定していません。

これは、self.shoppingListFilter変数を何らかの方法で初期化しないことに関する問題だと思いますが、これを理解することはできません。NSLogは正しい出力を示し、newShoppingFilterはnullではありませんが、self.shoppingListFilterはnullです。

どんな助けでも大歓迎です。

4

1 に答える 1

1

きっと newShoppingFilter は nil です。ほとんどの場合、通知ユーザー情報ディクショナリにキー「shoppingListFilter」がありません。

self.shoppingListFilter に値を代入する行にブレークポイントを設定し、newShoppingFilter の値を確認します。また、notificationUserInfo の内容全体を表示します。

ユーザー情報ディクショナリを作成し、それを投稿する通知に渡すコードを投稿します。それは問題を追跡するのに役立ちます。

于 2012-06-05T02:09:56.817 に答える