アクティビティを横向き/縦向きで使用できるようにしたい。アクティビティは、現在の向きのレイアウトで開始されます (つまり、アクティビティを開始する前)。その後、向きの変化に反応せず、それに固執する必要があります。
入れてみた
android:configChanges="orientation"
アクティビティのマニフェストで、オーバーライドする
@Override
public void onConfigurationChanged(Configuration newConfig) {
// TODO Auto-generated method stub
super.onConfigurationChanged(newConfig);
}
何もしないでください(スーパーコールにもコメントしようとしましたが、これは例外につながります)が、これは回転の変更を無効にする効果はありません-変更が処理され、レイアウトが再構築され、正しいものが使用されません。
しかも使えない
android:screenOrientation
常に1つのモードのみを指定する必要があるように思われるため、それも必要ではありません。とにかく、そこで何かを指定すると、回転時にアクティビティが再構築されます。で試した
android:screenOrientation="nosensor"
それは何もしません
ここには、コードhttp://www.samcoles.co.uk/mobile/android-lock-and-unlock-screen-orientation/による現在の向きのロックがあり ます
ただし、XML で向きを指定するのと同じ効果が得られます (レイアウトは維持されますが、アクティビティは再構築されます)。それは私が望むものに少し近いですが(最初からオリエンテーションを維持します)、アクティビティを再構築し、まったく反応させたくありません。