12

私の AppDelegate クラスは、以下のような特定の通知に登録されています

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

    {

        [[NSNotificationCenter defaultCenter] addObserver:self
                                                 selector:@selector(applyThemeA:)
                                                     name:@"ThemeA"
                                                   object:nil];

    }

そして、applyThemeAはそうします(あまりありません)

- (void)appleThemeA:(NSNotification*)notification {
    NSLog(@"apply themeA");
}

に配置removeObserverapplicationWillTerminateていますが、それが良い方法かどうかはわかりません。

質問

このメソッドを配置するのに適した場所ですか。

私は自分が正しいやり方をしていることを確認したいだけです。質問が適切でない場合は、反対票を投じないでください。ありがとう

4

1 に答える 1

21

それは完全に適切です。リスナーはアプリの起動時に作成されるため、アプリの終了時に破棄する必要があります。

技術的に言えば、実際には必要ありません。アプリケーションが終了すると、リスナーを含むすべてが破棄されます。

于 2012-10-03T14:50:33.787 に答える