Android端末の解像度の違いに対応

Android端末の解像度の違いの対応方法の一つがスクリーンの密度を取得し、その値により画像等を拡大する方法です。

[java]

DisplayMetrics metrics = new DisplayMetrics();

getWindowManager().getDefaultDisplay().getMetrics(metrics);

d=metrics.scaledDensity;

[/java]

上のdが密度です。この値を用いて画像を拡大するとどの端末でも

同じように表示されます。

android:anyDensity="false"と設定した場合のように画像の縁が荒くなるようなこともありません。

この方法はxmlでレイアウトを設定しない場合に必要なもので、xmlではdipなどの単位を使用できるのでそちらで問題ないと思います。

遊んで作るスマホゲームプログラミング for Android (Game developer books)

広告を非表示にする