私のアプリでは、ホームボタンを押すと、アプリケーションをrootviewcontrollerログインクラスにポップします。さて、前のクラスでは、アラートビューが表示され、それを閉じずにホームボタンを押すと、問題が発生します。次回アプリアイコンをタップして前面に表示すると、ログイン画面が表示されますが、その上に前のクラスのアラートビューも表示されます。applicationDidEnterBackgroundのアラートビューを削除するにはどうすればよいですか?
質問する
733 次
2 に答える
3
表示された最後のアラートビューへのポインターを格納するだけのグローバル(AppDelegateプロパティまたはシングルトン)を用意します(完了したらクリアします)。ポインタがnil以外の場合は、DidEnterBackgroundまたはその他の場所でポインタを閉じます。
于 2012-11-30T13:09:20.387 に答える
1
UIApplicationWillResignActiveNotification、UIApplicationWillEnterForegroundNotificationを使用してこの問題を解決することもできます
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(resignActive)
name:UIApplicationWillResignActiveNotification
object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(enterForeground)
name:UIApplicationWillEnterForegroundNotification
object:nil];
resignActiveメソッドでは、alertviewsを削除できます...
于 2012-11-30T13:22:24.927 に答える