タグ

2012年6月27日のブックマーク (7件)

  • Androidアプリ開発::Densityの話

    前回のエントリで使ったアプリと関連します。なんでIS03では表示したドロイドがePadよりも大きな(ピクセル数的に)表示になってしまったのかってこと。Androidはスケーラブル、って表現が正しいのかわかんないけど、そんな設計になってます。どういうことかって言うと、どんな画面サイズでどんな解像度の端末でも、表示されるモノの物理的な寸法は(ほぼ)同じにしようよってことです。IS03の方が画面が小さく解像度も高いのに、IS03で表示されたドロイドも、ePadで表示されたドロイドも、定規で大きさを測ってみるとほぼ同じになるように表示されてたんです。 その辺の判断の指標になるのが、Density(dpi)です。IS03は320dpi(厳密にはもう少し大きいけど、端末的にそういうことになっているみたい)、ePadは160dpiです。もう少し言うならば、Androidの基準になっているDensityは

  • 画面の互換性の概要  |  Android Developers

    AI エクスペリエンスの構築 Gemini API などを使用して、AI を活用した Android アプリを作成できます。

    画面の互換性の概要  |  Android Developers
    yuhei_kagaya
    yuhei_kagaya 2012/06/27
    各解像度へのリソース自動選択、dip
  • [Android編]Android端末は皆同じと考えてはいけない

    Androidプラットフォームを採用した商用向け端末がはじめて世に登場したのは、2008年10月のことだ。米T-Mobileの「T-Mobile G1」を皮切りに、わずか2年足らずの間で、世界中のメーカーがこぞってAndroid搭載機を市場に投入した。そして今もなお、Androidは急速にシェアを拡大し続けている。 ユーザーの視点からすると、デバイスの多様性がAndroidの持つ魅力の一つといえる。ユーザーは、自分の好みや利用目的に合わせて端末を選択することができるからだ。もちろん、携帯電話だけに限らず、今後はPDAやカーナビ、家電などといった分野にも応用されていくことだろう。 ところが、デベロッパーの視点から見た場合、その多様性が逆にあだとなってくる。開発の対象となるデバイスが多ければ多いほど、実機での検証が困難になるからだ。なるべく多くの種類の端末で検証することが望ましいが、その分、検

    [Android編]Android端末は皆同じと考えてはいけない
    yuhei_kagaya
    yuhei_kagaya 2012/06/27
    1 dipは「160 dpiの1 pixelの物理的な大きさ」
  • Android:画面密度によるリソースのスケーリング

    解像度にあったサイズを割り出すには下記の比率を覚えておくと便利です。 3:4:6:8 左から ldpi, mdpi, hdpi, xhdpi となります。 mdpiで100pxの画像をhdpiでも同じ見た目に仕上げたい場合は 4:6=100:x 4x=600 として x=150px が求められます。 もう少し掘り下げてみます。 開発者はどのプラットフォームでも同じ動作をするようにアプリを作成する必要があります。 UIについても同様に「特定の端末でレイアウトが崩れる」といった問題を避けなければい けません。 今回はマルチ画面対応を実現するために欠かせない「画面密度」「解像度」についてです。 ・画面密度 画面の物理的な領域内におけるピクセル数。 通常dpi(ドット数/インチ dot per inch)と呼ばれます。 画面密度の低い(lowな)画面は、画面密度の高い(highな)画面と比べて、領

    Android:画面密度によるリソースのスケーリング
  • Android Dimension 単位

    Android では px (ピクセル)以外にも dp や sp などの単位があります。 ドキュメントはこちら http://developer.android.com/intl/ja/guide/topics/resources/more-resources.html#Dimension dp (dip) Density-independent Pixels 画面の物理的な密度に基づいた抽象的な単位。 この単位は 160 dpi の画面と対応していて、160 dpi の画面で 1 dp = 1 px になる。なので、dp-pixel 比は画面密度(解像度)に応じて変化するが、必ずしも正比例するわけではない。コンパイラは "dip"、"dp" のいずれも理解できるが、"dp" という記述のほうが "sp" との対応関係がよりわかりやすい。 sp Scale-independent Pixe

    yuhei_kagaya
    yuhei_kagaya 2012/06/27
    dp (dip)Density-independent Pixels 。画面の物理的な密度に基づいた抽象的な単位。 この単位は 160 dpi の画面と対応していて、160 dpi の画面で 1 dp = 1 px になる。
  • Android TextView の setTextSize() は sp 単位だよ!

    いままでも sp という単位が用意されていましたが、標準の設定アプリでシステムの文字スケールを 設定できないかったので、ほぼ dp と同じような振る舞いでした。 Android 4.0 の設定アプリではシステム全体の文字スケールが設定できるようになっています。 [Display] - [Font size] で、ここからが題。 TextView の setTextSize() メソッドの引数は sp 単位として処理されます。 --- public void setTextSize (float size) Set the default text size to the given value, interpreted as "scaled pixel" units. This size is adjusted based on the current density and user

    Android TextView の setTextSize() は sp 単位だよ!
  • LinearLayoutとRelativeLayoutの使い方をまとめてみた - プログラミング雑記

    Androidアプリで画面を作成する際、LinearLayoutとRelativeLayoutの使い方をしっかり把握しておかないと、後々苦労することが多いと思いますので、レイアウト構成を自分の知る範囲でまとめてみました。 LinearLayoutの場合 1 均等に配置 XML 2 余った幅全体に配置 XML 3 真ん中で2等分 XML 4 上記の縦バージョン XML RelativiLayoutの場合 5 両端固定幅、真ん中は幅いっぱい XML 6 上記のレイアウトに追従する形で配置 XML 7 上下に両端、真ん中配置のボタンを配置 XML 8 上記レイアウトの空白を埋める配置(ListView等) XML 9 上記レイアウト中央の両端に、ボタンを配置 XML 10 相互に作用する配置 XML LinearLayoutとRelativiLayoutを複合 11 ボタンの高さを任意のレイアウ