2

ホームボタンを押してアプリをバックグラウンドにしてから、デバイスの向きを変更してアプリをフォアグラウンドにすると、[UIDevice currentDevice].orientation で以前のデバイスの向きの値が取得されます。

たとえば、デバイスをデフォルトの向きで保持し、アプリをバックグラウンドにして、デバイスを上下逆さまの向きに回転させてから、アプリをフォアグラウンドに移動します。deviceOrientation は、照会時にデフォルトのままです。しばらくすると、beginDeviceOrientationEvents のリスナーが呼び出され、正しい値が使用可能になります。

アプリの再起動時に deviceOrientation の正しい値を取得する最初の場所はどこですか?

4

1 に答える 1

0

アプリのデリゲートのメソッドで[[UIDevice currentDevice] orientation](ドキュメントで説明されているように) を使用します。applicationDidBecomeActive

アップデート

実際、[[UIApplication sharedApplication] statusBarOrientation]返される値には、アプリに対応するように設定した向きが考慮されるため、より便利な場合があります。

于 2012-04-03T15:49:45.257 に答える