Android端末の向きを取得する。
Android端末の向きを取得する。
画面の向きが、縦か、横かを取得する方法を関数形式でメモ。
public boolean GetRotateState() { /* 現在の設定情報を取得 */ Configuration config = getResources().getConfiguration(); //① if (config.orientation == Configuration.ORIENTATION_PORTRAIT) //② { /* 現在の向きが縦の場合 */ return false; } else { /* 現在の向きが横の場合 */ return true; } }
①.ActivityのConfigurationを取得します。
②.取得した、Configurationのorientationフィールドと比較して、縦ならfalseを、横ならtrueを返す。
端末の向きが縦か、横かを取得する簡単な関数になっていますが、実際にはこれでは考慮不足かもしれません。
Configurationのorientationフィールドに入る可能性があるのは、下記の4パターン。
1.ORIENTATION_LANDSCAPE = 2 「横向き」
2.ORIENTATION_PORTRAIT = 1 「縦向き」
3.ORIENTATION_SQUARE = 3 「正方形?」APILevel16から廃止
4.ORIENTATION_UNDEFINED = 0 「未設定?」
正方形と、未設定の場合も一応ありえるらしいので、対応する形にするのが最善なのかもしれない・・・