2

どのような場合、iOSアプリケーションはスプラッシュ画面、つまりデフォルトの画像(アプリの起動以外)を表示しますか?

ビューコントローラにランドスケープモードのみをサポートするように強制しています

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{ 
     return (interfaceOrientation == UIInterfaceOrientationLandscapeRight || interfaceOrientation == UIInterfaceOrientationLandscapeLeft); 
}

ユーザーがこのビューにいて、アプリケーションをバックグラウンドにプッシュしてから元に戻すと、アプリは1秒未満のスプラッシュ画面を表示します。

別のケースでは、UIAlertViewを開いている場合、アプリケーションをバックグラウンドにプッシュして元に戻すと、アプリは1秒間スプラッシュ画面を表示します。

UIKitのドキュメントでこれについて説明がありますか?また、iOSでマルチタスクを実行すると、ユーザーにスプラッシュ画面が短時間表示されます。

ありがとう。

例を使用して質問を更新しました:

[設定アプリケーション]に移動すると(初めて)-> iTunes&App Stores-> AppleIdをタップします:行->アラートビューが表示されます->アプリをバックグラウンドに戻す[ホーム]ボタンを押します->アプリを元に戻します上。以前の画面が表示される前に、設定アプリケーションのDefault.pngを1秒未満観察します。

4

2 に答える 2

9

システム(SpringBoard)は、アプリのスナップショットを管理します。アプリを終了すると、スナップショットがpngファイルとして内部に書き込まれますLibrary/Caches/Snapshots/com.yourcompany.yourapp/UIApplicationAutomaticSnapshotDefault-Portrait@2x.png

アプリを再起動すると、SpringBoardはそのファイルを読み取って表示しようとします。これにより、アプリが非常に速く起動したという印象を与えることができます。そのスナップショットファイルを読み取れない場合は、Default.png代わりに表示されます。

Default.pngこれは、アプリをすぐに終了して再起動した場合にのみ表示されることに気付きました。アプリを再起動する前に1〜2秒待つと、システムはスナップショットを書き込む時間があり、Default.pngは表示されません。

Default.pngシステムプロセスがスナップショットの表示を管理しているため、アプリで一時的に表示されないようにすることはできません。

于 2012-10-31T23:27:38.783 に答える
1

Default.pngは、アプリを最初から開始した場合にのみ表示されます。これは、初めて、または最後に開いてから完全に閉じたことを意味します。

標準のアプリを実行しただけの場合、最初の起動時にDefault.pngが表示されるのは、システムから(メモリが少なすぎるため)、またはマルチタスクバーを介してユーザーから閉じられるまでです。

于 2012-10-31T20:18:27.803 に答える