0

ここでは、縦向きと横向きの両方に対応する1つのAndroidアプリケーションを開発しています。そこで、LandscapeとPortrait用に2つのレイアウトフォルダーを作成し、Portraitlayout.xml用とlandscape用の2つのファイルを作成します。ポートレートlayout.xmlファイルには1つのImageViewがあり、ランドスケープlayout.xmlファイルには2つのImageViewがあります。で、エントリにAndroidManifest.xmlパラメータを設定して、向きの変更時にアクティビティの再作成を停止します。そして私の活動では、私は以下のようにオーバーライドしますandroid:configChanges="keyboard|orientation"<activity>onConfigurationChanges()

 public void onConfigurationChanged(Configuration newConfig) 
 {
    try
    {
        // TODO Auto-generated method stub
        super.onConfigurationChanged(newConfig);

        Toast.makeText(myContext, " Config Changed ", 1000).show();

        setContentView(R.layout.double_pageread_layout);

        setLayout();  // Initialize Controls (Buttons, ImageView,etc..)
    }
    catch (Exception ex) 
    {
        ex.printStackTrace();
    }
}

しかし、問題は、アプリケーションを実行するときに発生することです。完璧だとわかりますが、向きを変えても何も表示されません。

私を助けてください。

前もって感謝します。

4

1 に答える 1

1

構成の変更を処理してレイアウトを手動で変更する必要はありません。2つの異なるlayout.xmlファイルをres/layoutandres/layout-portフォルダーに配置するだけで、Androidは回転時に適切なファイルを自動的に膨らませます。

于 2013-01-04T07:04:21.503 に答える