2011-12-16 7 views
2

私はマニフェストファイルに追加しました。私は2つのフォルダlayout-landとlayout-portを作成しました。例えば、両方のフォルダのmain.xml、対応するfolder.whenにxmlファイルを保存しました。 xml。風景とpotriatレイアウトを呼び出す方法は、モードの変更に依存しますか?

+1

アンドロイドがそれを気にしない向きを呼び出す必要はありません。 –

+0

アンドロイド:configChanges = "keyboardHidden"マニフェストのここでの方向をntまで削除しました – babi

答えて

1

あなたは以下のように描画可能なフォルダ(風景、ポートレート)などの異なるXMLファイルを作成することになります。

res/layout/my_layout.xml    // layout for normal screen size ("default") 
res/layout-small/my_layout.xml  // layout for small screen size 
res/layout-large/my_layout.xml  // layout for large screen size 
res/layout-xlarge/my_layout.xml  // layout for extra large screen size 
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation 

res/drawable-mdpi/my_icon.png  // bitmap for medium density 
res/drawable-hdpi/my_icon.png  // bitmap for high density 
res/drawable-xhdpi/my_icon.png  // bitmap for extra high density 
+0

res/layout-land/main.xml、res/layout-port/main.xmlこれは正しいと思いますが、そうでなければ – babi

+0

あなたは何をゲットしていませんか? –

2

あなたは風景やポートレートモードである場合、Androidはレイアウトファイルを検索しますhttp://developer.android.com/guide/practices/screens_support.html

が異なるレイアウトとしてそれらを定義参照して、適切なフォルダにそれらを入れて、OSはあなた

+0

レイアウトランドフォルダにあるxmlファイルを呼び出す方法を追加する必要があります – babi

+0

Androidのデバイスの現在の向きに応じて、自動的に正しいレイアウトフォルダが選択されません。 – Flo

0

のためにそれを処理します最初に-portまたは-landディレクトリのいずれかが見つからない場合は、デフォルトのレイアウトディレクトリに戻ります。

リソースの詳細については、hereを参照してください。

0

FYI Androidのエミュレータ(AVD)は、風景の中にあります認識することができません。 CTRL + F11を押してAVDエミュレータを横向きにしても、実際には風景モードであることをアプリケーションに登録しません。要するに、あなたがエミュレータ上で走っているならば、あなたのアプリケーションはそれがポートレートモードで動作していると常に思っています(そして "レイアウトランド"のリソースフォルダは探しません)。それとAndroidデバイスでテストしてください:

関連する問題