アプリケーションを実装していて、すべての画面サイズをサポートしたいと考えています。私は 4 つのレイアウト フォルダーを持っています: layout、layout-small、layout-large、layout-xlarge。
標準レイアウト フォルダをサポートする画面サイズはどれですか? それは必要ですか?
標準レイアウト フォルダをサポートする画面サイズはどれですか?
あなたの場合、どのファイルがどのディレクトリにあるかによって異なります。
main.xml
あなたがにlayout/
あり、他の 3 つの候補のいずれにもないとしましょう。次に、setContentView(R.layout.main)
でコピーを使用しますlayout/
。
ここで、 の改訂版を追加するとしmain.xml
ますlayout-xlarge/
。-xlarge
デバイスでは、Android は のバージョンを使用し、他layout-xlarge/
のmain.xml
画面サイズでは、Android は のlayout/
バージョンを使用しmain.xml
ます。
main.xml
ここで、今度は に 3 番目のバージョンを追加するとしますlayout-small/
。Android は引き続きデバイス用の のコピーlayout-xlarge/
を使用します。ただし、他のすべてのデバイスは を使用し、 のコピーは無視されます。Android は、大きいサイズ (デバイス上のレイアウトなど)からレイアウトを縮小しようとはしませんが、小さいサイズ (デバイス上のレイアウトなど) からレイアウトを拡大しようとします。main.xml
-xlarge
layout-small/
layout/
main.xml
-xlarge
-normal
-small
-normal
私がする傾向があるのは、次の目的で使用することlayout/
です。
-normal
(ほとんどサポートしていないため-small
)次にlayout-large/
、、、layout-xlarge/
またはそれらの Android 3.1 以降の代替品 (例: layout-w720dp/
) を使用して、より大きな画面サイズでレイアウトを使用します。
ただし、それは私のスタイルであり、上記の使用規則の範囲内で、自由に使用してください。
現代の記法を使用することは、より良い解決策です:
/layout // for phones
/layout-sw600dp // for 7 inch tablets
/layout-sw720dp // for 10 inch tablets
人気のある:
Mdpi画面のスマホは安い HDpi画面のスマホは高い。
レイアウトのみの mdpi フォルダーを使用する場合、このレイアウトはすべての画面で使用されます。
伝説:
layout-small = ldpi
layout = mdpi
layout-large = hdpi
layout-xlarge = xhdpi