いつもお世話になっております。
メイン画面と設定画面があります。
現在、自作アプリの設定画面にて画面を縦固定、横固定、自動に切替えの3つを実装しました。
設定が変更されてメイン画面に戻ったら
onCreate、onResumeで
①画面を固定
②Viewを描画
する下記処理をしてます。
//①固定設定(自動、縦固定、横固定)
settings
=PreferenceManager.getDefaultSharedPreferences(getBaseContext());
int rotation
=java.lang.Integer.parseInt(settings.getString("rotation_list", "0"));
if(rotation==0){//自動
this.setRequestedOrientation(Configuration.ORIENTATION_UNDEFINED);
}else if(rotation==1){//縦固定
this.setRequestedOrientation(Configuration.ORIENTATION_PORTRAIT);
}else if(rotation==2){//横固定
this.setRequestedOrientation(Configuration.ORIENTATION_LANDSCAPE);
}else{
this.setRequestedOrientation(Configuration.ORIENTATION_UNDEFINED);
}
//②描画設定
Configuration config = getResources().getConfiguration();
if (config.orientation == Configuration.ORIENTATION_PORTRAIT) {//
Portrait(縦)
setContentView(eBookViewPort);
}else if(config.orientation == Configuration.ORIENTATION_LANDSCAPE)
{// Landscape(横)
setContentView(eBookViewLand);
}else {// 不明な場合
setContentView(eBookViewPort);
}
ですが縦画面固定から横画面固定に変更後、メインに戻っても縦画面用のViewが横向きで表示されます。
横向き固定にはなるが縦画面Viewのままです。
もう一度、設定画面⇒メイン画面に戻るをすると横画面用Viewが表示されました。
2回目だとOKのようです。
固定設定後、Viewを表示させるタイミングに問題があるのでしょうか?
参考書などにはdrawable-port、drawable-landなどに振り分ければ自動で表示を変えてくれると書いてありますが
リソース容量の関係で出来ません。(横にすると2ページ見開きにするので共通のリソースを使いたい)
詳しい方、いらっしゃいましたらご教授のほど宜しくお願いします。
--
このメールは Google グループのグループ「Android-SDK-Japan」の登録者に送られています。
このグループに投稿するには、
android-...@googlegroups.com にメールを送信してください。
このグループから退会するには、
android-sdk-ja...@googlegroups.com にメールを送信してください。
詳細については、
http://groups.google.com/group/android-sdk-japan?hl=ja からこのグループにアクセスしてください。