Android 画面設計のポイント

Android アプリの開発で、少し厄介なことが画面に関するUIになります。
iOS開発では大きく分けて、iPhone/iPadだけを考えていればいいと思いますが、Android端末では、複数画面仕様が多岐に渡っているので考慮が必要になります。

よくAndroid機種で画面サイズを謳った広告がありますが、開発時はあまり関係ないかと思われます。
画面UIを製作する上で、画面幅と画面密度にポイントを置いておくことが必要です。

画面幅は、240、480、720、1080、1440などあり、同じアプリでも画一的に制作すると、おかしな画面UIとなってしまうので、サイズに関して考慮が必要です。アプリ仕様によっては、サポート不可能なサイズもあると言えます。

また、画面密度も異なるので、画面幅以外にも注意点が必要です。

同じ仕様で画面表示すると…。
800 × 1280 mdpi

720 × 1280 xhdpi

画面サイズと密度の判定方法

1  //ディスプレイサイズ取得
2        WindowManager wm = (WindowManager)getSystemService(WINDOW_SERVICE);
3        // ディスプレイのインスタンス生成
4        Display disp = wm.getDefaultDisplay();
5        Point size = new Point();
6        disp.getSize(size);
7       
8        float scale = getResources().getDisplayMetrics().density; //画面密度
9 
10 if ((size.x == 800) &&(scale == 1)){   //画面幅800 画面密度1
11//画面レイアウト設計
12}
13if ((size.x == 720) &&(scale == 2)){   //画面幅720 画面密度2
14//画面レイアウト設計
15}
16if ((size.x == 1080)&&(scale >=2.6)){ //画面幅1080 画面密度2.6
17//画面レイアウト設計
18}
Verified by MonsterInsights