1

アクティビティの現在の状態を失わずに方向を変更したい。

manifest.xml でandroid:configChanges="orientation|keyboardHidden|screenSize"を使用すると、横向きの xml ファイルが読み込まれず、縦向きの main.xml の向きが変更されます。

アクティビティを再開せずに、向きがlandsacpeに変更されたときにlayout-land/main.xmlが必要です。

4

3 に答える 3

0

実装する必要があるオリエンテーションが変更されると、アクティビティが再開されますonSaveInstanceState()onRestoreInstanceState()

于 2013-01-28T11:50:56.020 に答える
0

これはあなたを助けることができます

  @Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);

    // Checks the orientation of the screen
    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
        Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
    } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
        Toast.makeText(this, "portrait", Toast.LENGTH_SHORT).show();
    }
}

さらなる支援または詳細については、ランタイム変更の処理を使用してください

于 2013-01-28T10:09:27.260 に答える
0

これである程度は助かります

@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);

// Checks the orientation of the screen
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
   //Do your action
   } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
        //Do your action
   }
}
于 2013-01-28T10:29:36.900 に答える