みかづきブログ その3

3ヶ月つづけてみました。

Objective-C 作業メモ その5。

applicationDidBecomeActiveのタイミングをViewControllerで受け取る

アプリケーションがバックグラウンドから復帰した際にViewControllerのメソッドを実行したかったので色々調べました。
viewController.m の viewDidLoad内で、

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(applicationDidBecomeActive)
                                             name:UIApplicationDidBecomeActiveNotification
                                           object:nil];

と登録しておくと、applicationDidBecomeActive のタイミングで、
applicationDidBecomeActiveが実行されます。

localNotificationのタイミングをViewControllerで受け取る

アプリがバックグラウンドにいなくてもローカルプッシュを受け取りたかったので色々調べました。

まず、appDelegate.m にて、

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)localNotification
{
    [[NSNotificationCenter defaultCenter] postNotification:[NSNotification notificationWithName:@"UIApplicationDidReceiveLocalNotification"
                                                                                         object:self]];
}

という感じでlocalNotificationを受け取った際に @"UIApplicationDidReceiveLocalNotification" というイベントを発行します。

次に、viewController.m の viewDidLoad内で、

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

という感じで登録しておくと、ローカルプッシュを受け取る度に didReceiveLocalNotification が実行されます。


今回は以上です。