読者です 読者をやめる 読者になる 読者になる

2hours

1日2時間でなにができるかな

Xperia対応

Android

後回しにしようかと思ってたけど気になってXperia対応してみた。
そのメモを・・・。


サイズ指定の仕方

単純にフォントサイズなどを「dp」ではなく「px」指定していたのが原因。
dp何それおいしいの?状態でとりあえずpx指定したままだった・・・。



APIには以下のように
http://developer.android.com/intl/ja/guide/topics/resources/available-resources.html

px
  Pixels - corresponds to actual pixels on the screen.
in
  Inches - based on the physical size of the screen.
mm
  Millimeters - based on the physical size of the screen.
pt
  Points - 1/72 of an inch based on the physical size of the screen.
dp
  Density-independent Pixels - an abstract unit that is based
  on the physical density of the screen. These units are relative
  to a 160 dpi screen, so one dp is one pixel on a 160 dpi screen.
  The ratio of dp-to-pixel will change with the screen density,
  but not necessarily in direct proportion. Note: The compiler
  accepts both "dip" and "dp", though "dp" is more consistent with "sp".
sp
  Scale-independent Pixels - this is like the dp unit, but it is also
  scaled by the user's font size preference. It is recommend you use
  this unit when specifying font sizes, so they will be adjusted
  for both the screen density and user's preference.


いまいちよく分かってないのですが、

px = pixels
dip = device independent pixels: デバイスに依存しないピクセル
sp = scaled pixels: 拡大縮小されたピクセル、テキストサイズに最適
pt = points: ポイント
in = inches: インチ
mm = millimeters: ミリメートル

ということらしい。
単純に幅や高さは dp、フォントサイズは sp で指定ということでいいのか・・・。
これから端末が色々出てきたら、この辺をもっと詳しく調べる必要がありそうな予感。


画像について

とりあえず気になったのが、Xperiaではアプリアイコンがやたら小さいことw
やっぱり複数種類用意しなきゃダメですか・・・そうですか・・・。


アイコンについてはココ
http://developer.android.com/intl/ja/guide/practices/ui_guidelines/icon_design.html


その他画像についてはココ
http://developer.android.com/intl/ja/guide/topics/resources/resources-i18n.html


Androidメモによると
http://www.saturn.dti.ne.jp/~npaka/android/res/index.html

res/drawable-hdpi/は100〜140dpi用
res/drawable-mdpi/は140〜180dpi用
res/drawable-hdpi/は190〜250dpi用

とのこと。



調べてる最中に

※9.pngファイルはリサイズ可能なpngファイルで、
 AndroidSDKの「tools\draw9patch.bat」から編集ツールを起動できます。

っていうのが気になった。
そんなのがあるとは全く知らず・・・。


結果

エミュレータでしか確認出来ていませんが、Xperiaでの表示はこんな感じに。



とりあえずXperia対応も完了。
明日の日中に動作確認して夜にはアップデートする予定です。