2

Android の解像度とエミュレータでの表示方法について簡単な質問があります。テスト プロジェクトをセットアップして、さまざまな解像度と、それぞれの向きでどのように見えるかをテストしました。そこで、drawable-land-ldpi,mdpi,hdpi-xhpdi を作成し、drawable-port に対して同じことを行いました。私はまた、すべてのレイアウト フォルダを持っています。つまり、small med large x large、small-land、med-land、large-land、x-land

Android が正しいイメージを選択していることを確認するために、8 つのテスト イメージを作成しました。また、レイアウト フォルダーごとにレイアウト ファイルを作成しました。レイアウト ファイルには、フォルダー名を指定するだけのテキスト フィールドがあるため、どのレイアウト フォルダーが使用されているかがわかります。

2 つの質問があります。1 つ目は、各フォルダーに正しい画像サイズを作成しているかどうかです。私が作成した画像サイズは次のとおりです

drawable-land-ldpi - 320 * 240 drawable-port-ldpi - 240 * 320

drawable-land-mdpi - 480 * 320 drawable-port-mdpi - 320 * 480

drawable-land-hdpi - 800 * 480 drawable-port-hdpi - 480 * 800

drawable-land-xhdpi - 1080 * 720 drawable-port-xhdpi - 720 * 1080

2 番目の質問は、これらがエミュレーターで適切に表現されていないように見えるのはなぜですか? 例として、1 つの画面と適切なフォルダー内の画像を持つ Android アプリを作成しました。2 つのエミュレーターを作成しました。1 つは 2.3.3 で、もう 1 つは 3.0 タブレットです。

デバイスでデバイスを実行すると、中解像度フォルダーの画像が使用され、中レイアウト フォルダーが使用されます。したがって、ポートの場合はデフォルトのレイアウト フォルダーのレイアウトと drawable-port-mdpi の画像を使用し、ランドスケープの場合はデフォルトのランド フォルダーのレイアウトと drawable-land-mdpi の画像を使用します。

ただし、2.3.3 デバイスのエミュレーターでこれを実行すると、medium レイアウト フォルダーのレイアウト フォルダーが使用されますが、drawable-hdpi-port の画像とそのランドスケープが medium ランドスケープ レイアウト フォルダーを使用する場合は、 drawable-hdpi-land からの画像。3.0 タブレット エミュレーターで実行すると、xLarge ポートと xLarge ランドの正しいレイアウトが使用されますが、drawable-mdpi フォルダーの画像が使用されます。

すべての解像度とレイアウトをサポートするようにマニフェストに設定しました。エミュレータがこれを行う理由はありますか? 友人が持ってくるのを忘れたため、現在これをテストするための Android タブレットを持っていないので、これがタブレットで正常に動作するかどうかはまだテストできません。

エミュレーターを使用してさまざまなデバイスを試してテストできるようにしたいと考えていますが、正しいイメージを選択していない場合は信頼できません。他の誰かがこのような問題を抱えていますか? それとも私は何か間違ったことをしていますか?

どんな情報でも大歓迎です!!

4

1 に答える 1

1

ピクセル密度が重要です。たとえば、hdpi 画像は適切なサイズである可能性がありますが、ピクセル密度が正しくない場合でも、それらのフォルダーでスケーリングされます。たとえば、hdpi 画像のピクセル密度は ~240dpi にする必要があります。複数の画面サイズのサポートについては、開発者ガイドを確認してください。

http://developer.android.com/guide/practices/screens_support.html

もう 1 つの問題は、画面のサイズがさまざまで、ピクセル密度も異なる場合があることです。たとえば、タブレットは 10 インチ (X-Large) でも中程度のピクセル密度 (1280x800) です。同時に、解像度が 2560x1600 程度の場合は、xhdpi を備えた 10 インチの別のタブレットを使用することもできます。

ピクセル密度に基づいて実際のレイアウト フォルダーを指定する方がよい場合があります。つまり、フォルダを作成できます。

res/layout-sw600dp/main_activity.xml   # For 7” tablets (600dp wide and bigger)
res/layout-sw720dp/main_activity.xml   # For 10” tablets (720dp wide and bigger)

また、ポートとランドをそれらに適用することもできます。複数の画面サイズのサポートに関するページを読んでください。おそらく、多くの質問に答えるのに本当に役立つでしょう.

于 2012-08-02T17:56:15.640 に答える