2012-02-12 39 views
1

新しいモーダルビューコントローラを開くルートビューコントローラがあります。アプリがバックグラウンドに移動すると、トップビューは表示されなくなりますが、アプリが再び開くと、分けられたビューが表示されています。アプリがバックグラウンドから再びアクティブになったときに表示されるiOSビューの変更方法。

アプリが再度アクティブになったときに、どのようにしてトップビューが表示されないようにすることができますか。

私は成功せず、トップビュー自体にviewWillDisappearに同様のアプリデリゲート(applicationWillResignActive、applicationDidEnterBackground、applicationWillEnterForeground、applicationDidBecomeActive)に考えることができるすべてのステージ上の平面図を解任しようとしています。ビューは終了しますが、アプリがアクティブになったときに分けて見ることができます。

誰かが、アプリケーションがアクティブになったときに常にルートビューを表示するのに役立つことができますか?私は打ち上げイメージで何もしたくない、それはうまくいっている。私はちょうどそのアプリケーションが他のビューを表示するのではなく、起動/アクティブになった後のルートビューを望んでいます。それが不可能な場合は、ルートビューコントローラが表示される準備が整うまでイメージを表示できますか?

ありがとうございました。

答えて

4

applicationDidEnterBackgroundの末尾に、OSがあなたのUIの写真を撮影します。 Appleはthe documentationに私たちにこのことを伝える:

ときapplicationDidEnterBackground:メソッドが返す、あなたのアプリのユーザーインターフェースの写真をとり、トランジションアニメーションのために結果 画像を使用しています システム。インタフェース のいずれかのビューに機密情報が含まれている場合は、applicationDidEnterBackground:メソッドが戻る前に、これらのビューを非表示または変更して にする必要があります。

しかし、私はモーダルビューコントローラをアニメーション化しているので、画像を撮ると、ビューがアニメーション化されているように写真が撮られます。あなたはそれをアニメ化しないで却下することができます。バックグラウンドへの移行中にユーザーにルートビューコントローラが表示される可能性がありますが、残念なことにそれらのオプションの1つと一緒に暮らす必要があると思います。

+0

ありがとうございました。私はモーダルビューをアニメ化しているわけではありません。モーダルビューは、applicationDidEnterBackgroundに配置するとすぐに解除されません。ビューを閉じると、アプリケーションを2回開いた後にのみ、ビューは終了します。なぜ私はこれが起こっているかを知ることができるかどうかを調べるために、もう少し作業をします。 – lorenc

+0

私のアプリにバグがありました。 applicationDidEnterBackgroundでの解雇を追加するだけでうまくいきました。 – lorenc

関連する問題