簡単に言うと、次のように iOS アプリのrootViewController
onを変更しようとしています。applicationWillEnterForeground:
- (void)applicationWillEnterForeground:(UIApplication *)application
{
MyViewController *controller = [[MyViewController alloc] init];
self.window.rootViewController = controller;
}
ただし、アプリがバックグラウンドからフォアグラウンドに移動するときに実行される「ズームイン」アニメーションを iOS が実行すると、以前rootViewController
の のビューが引き続き表示されます。次に、アニメーションが完了するとすぐに、アプリは newrootViewController
のビューを画面に表示します。
これを解決する 1 つの方法は、単にそのコードを に移動することですが- (void)applicationDidEnterBackground:
、このソリューションの問題は、私のアプリでは、新しいrootViewController
が割り当てられるかどうかを知る方法がない- (void)applicationWillEnterForeground:(UIApplication *)application
ことです (アプリを離れてからの経過時間に基づいています)。 )。
iOS がアプリをバックグラウンドからフォアグラウンドに移動するアニメーションを実行する前に、アプリを強制的に再描画するにはどうすればよいですか?