0

アプリのデリゲート:

- (void)applicationDidBecomeActive:(UIApplication *)application {
    [[NSNotificationCenter defaultCenter] postNotificationName:APP_REFRESH_NOTIFICATION object:nil];
}

私のビューコントローラで:

- (void)viewDidLoad {
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(doStuff) postNotificationName:APP_REFRESH_NOTIFICATION object:self];
}

- (void)doStuff呼び出されることはありません。なんで?

4

3 に答える 3

1

selfにパラメーターとして渡していますが、objectパラメーターを受け入れないため、メソッド呼び出しは (サイレントに) 失敗します。次のようになります。addObserver:selector:name:object:doStuffviewDidLoad

- (void)viewDidLoad {
    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(doStuff)
                                                 name:APP_REFRESH_NOTIFICATION
                                               object:nil];
}
于 2013-10-15T21:18:39.413 に答える