デバイスの詳細な向きを知りたいのですが、できればSCREEN_ORIENTATION_LANDSCAPE
、SCREEN_ORIENTATION_PORTRAIT
、SCREEN_ORIENTATION_REVERSE_LANDSCAPE
、SCREEN_ORIENTATION_REVERSE_PORTRAIT
fromActivityInfo
または同等のいずれかです。
StackOverflow に関する回答の一部が含まれています
getWindowManager().getDefaultDisplay().getRotation()
しかし、これは、デバイスが縦向きモードか横向きモードかを実際に教えてくれるわけではなく、自然な位置を基準にしてどのように回転しているかだけを教えてくれます。
getResources().getConfiguration().orientation
次の 3 つのうちの 1 つを返します: ORIENTATION_LANDSCAPE
、ORIENTATION_PORTRAIT
、ORIENTATION_SQUARE
。この場合、電話がどちらの方向を向いているか (上下逆なのか、どちらの面を向いているのか) はわかりません。
後者を と組み合わせて使用しDisplayMetrics
て、デバイスの自然な向きを見つけることができることは知っていますが、本当に良い方法はありませんか?