2
- (void)applicationWillResignActive:(UIApplication *)application {
    NSLog(@"resigning active status...");
}

iPhoneシミュレータでハードウェアロックを試しましたが、呼び出されません。appdelegate自体ではなく別のUIviewcontrollerクラスで呼び出したいのですが、viewControllerのヘッダーファイルにも追加しました。

4

2 に答える 2

3

ドキュメントによると、デバイスがロックされている場合、「applicationWillResignActive」メソッドが呼び出されます。

そのため、Command-L(またはメニューの「ハードウェア」>>「ロック」)を押すと、iPhoneシミュレーターがロックされ、うまくいけばこのメソッドがトリガーされます。

于 2010-02-06T12:29:26.767 に答える
2

このコードをAppDelegateファイルでも機能させることしかできませんでした。

NSNotificationCenterを使用して、ViewControllerをオブザーバーとして追加してみてください。

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

次に、applicationWillResignで通知を投稿し、

[[NSNotificationCenter defaultCenter] postNotificationName:@"AppResigned" object:nil];

お役に立てば幸いです。

于 2010-02-06T12:24:14.523 に答える