2013年5月16日木曜日

SurfaceViewでの複数解像度に対応した画面設計

Androidでは多様な端末が存在しており、解像度も縦横比も異なるさまざまな画面に対応しなければなりません。
これに対処するには用途に応じて画面に対する比率で大きさを決める部分、縦横比を固定する部分、引き伸ばしてもいい部分というように分割して考える必要があります。
例えば拙作のFactoryではこのような分割をして画面を設計しました。



画面に対して上下を55:45に分けて液晶描画とボタン描画部にとっています。
上部分の液晶表示部は横を全体width90%としていますが、縦横比は変えたくない部分なので縦はそれに対しての77%にしています。
この設計でいくとXperia Z、LG L-06D、初代Xperia SO-01Bなどでは以下のような実寸になります。
 
改めて計算してみると数あるAndroidスマートフォンの中でも、おそらく最も縦横比の縦が短いと思われるJOJO携帯ことLG L-06Dですが、上下分割の上の部分494pxに対して液晶表示枠の縦が768×0.9.×0.77=532pxになっていてはみ出してしまっています。
今頃気づいたんですがこれは完全に設計ミスですね
LG L-06Dユーザーの方ごめんなさい。

0 件のコメント:

コメントを投稿