0

次の 2 つのデバイスのレイアウト/ドローアブルを区別したい:

1) 7" hdpi
2) 7" ldpi

したがって、次の修飾されたディレクトリを使用しています。

1) layout-sw600dp-hdpi / drawable-sw600dp-hdpi
2) layout-sw600dp-ldpi / drawable-sw600dp-ldpi

しかし、画面サイズがピクセル 480x764 の 7 インチ ldpi デバイスで実行すると、Android (V4.0.3) は hdpi バージョンを選択します。なぜでしょうか? ドキュメントを読むと、ldpi の方が適しているはずです。

layout-sw600dp-hdpi / drawable-sw600dp-hdpi を完全に削除すると、2) が選択され、すべて問題ありません。しかし、hdpi バージョンも必要です。

では、どうすれば 7 インチ デバイスの ldpi/hpdi バージョンを区別できますか?

ありがとうございました!

アンドレイ

4

2 に答える 2

0

複数の画面のサポートが機能しない場合は、手動で行うことができます。

フラグ付きで bools-ldpi、bools-hdpi を作成します。

bools-ldpi には、「lowDp」という名前のフィールドが含まれています = true bools-hdpi には、「highDp」という名前のフィールドが含まれています = true など。

コードでは、if-else if-else を作成します。

if ( getresource "lowDp" ) 
    ...
else if ( getresource "highDp" ) 
    ...
...
于 2012-12-29T15:26:27.103 に答える
0

私はもう参照を見つけることができませんが、画面のピクセル密度 (ldpi、hdpi など) と、そのような組み合わせの結果は不定でした。

異なるスクリーン ピクセル密度で異なるドローアブルを表示する場合は、それらを drawable-ldpi/icon.png や drawable-hdpi/icon.png などの独自のドローアブル レパートリーに配置し、レイアウト レパートリーとは別に、swdp のみを保持する必要があります。これらのレイアウト レパートリーの用語。

于 2012-12-30T11:29:51.823 に答える