【Android開発】タブレット向けの表示設定の追加方法

今更感もありますが、Android開発におけるノウハウについてもできるだけ投稿していきたいと思います。
(PhoneGapの導入手順をまとめておいたことで、自分自身何度も参照して役に立ったので・・・)

今回は、本日、「暗算百問」と「野菜かな」に適応したタブレット向けの表示設定を追加する方法についてまとめました。

目的

  • スマホとタブレットで文字サイズを変更したい。
  • スマホとタブレットで余白サイズを変更したい。
  • javaファイルは修正せずに、xmlファイルの修正だけで実現したい。

文字/余白サイズの定義ファイルを追加

スマホとタブレットで変更したい文字サイズと余白サイズを定義したファイルを作成する。
文字サイズも余白サイズも複数種類定義可能。
(種類が多い場合は、同程度サイズをマージしていくと良いかと)

<resources>
    <dimen name="sp_s">16sp</dimen>
    <dimen name="sp_m">20sp</dimen>
    <dimen name="sp_l">24sp</dimen>
    <dimen name="dp_s">2dp</dimen>
    <dimen name="dp_m">4dp</dimen>
    <dimen name="dp_l">8dp</dimen>
</resources>
<resources>
    <dimen name="sp_s">20sp</dimen>
    <dimen name="sp_m">30sp</dimen>
    <dimen name="sp_l">40sp</dimen>
    <dimen name="dp_s">4dp</dimen>
    <dimen name="dp_m">8dp</dimen>
    <dimen name="dp_l">16dp</dimen>
</resources>

→最小幅(Smallest Width)が600dp以上の端末はこちらの設定が有効となる。

上記2ファイルのみだと最小幅600dp以上の端末は全て同じ設定となる。
もし、7インチと10インチで表示設定を変えたいような場合は「res/values-sw720dp/dimen.xml」ファイルを追加して、上記と同様の設定を行えば対応可能。

layoutファイルの変更

layoutファイルの文字サイズと余白サイズを直指定している個所全てを、今回追加した設定値を参照するように変更する。

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_margin="8dp"
        android:lineSpacingExtra="4dp"
        android:textSize="20sp" />

 

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_margin="@dimen/dp_l"
        android:lineSpacingExtra="@dimen/dp_m"
        android:textSize="@dimen/sp_m" />

 
【2014/07/17追記・修正】
各アプリへの適応を進める中で、文字サイズの単位は「sp」、それ以外は「dp」で済ませらせそうだったので、dimen.xmlの定義名を下記のように変更しました。

変更前)⇒ 変更後)
margin_s ⇒ dp_s
margin_m ⇒ dp_m
margin_l ⇒ dp_l
textsize_s ⇒ sp_s
textsize_m ⇒ sp_m
textsize_l ⇒ sp_l

今までサイズ指定は何となくでも実装できており、ちゃんと調べてこなかったので勉強になりました。
「dip」と「dp」が同義だということも知らず、ソース上では混在・・・
今回の集約作業を機に、1文字短い「dp」で統一していくつもりです。

以上です。

One Response to “【Android開発】タブレット向けの表示設定の追加方法”

  1. […] ※ファイル名はお好みのものを付けてください。 ※dimen.xmlの指定方法は、こちらの記事を参照ください。 […]

サブコンテンツ

公開中のAndroidアプリ(全て無料です)

ビジネス

おじさんのメモ帳 おじさんのメモ帳
シンプルなメモ帳
日報 日報
日報作成補助ツール
議事録 議事録
議事録作成補助ツール

学習(国語・算数)

漢字かな 漢字かな
漢字の読みの学習に
ひらがなプラス ひらがなプラス
かな・カナの学習に
暗算百問 暗算百問
毎日暗算で頭の体操
あんざん25 あんざん25
両手で計算してみよう

学習(理科・社会)

記号かな 地図記号
地図記号の学習に
魚かな 魚かな
海の生物の学習に
動物かな 動物かな
陸上の生物の学習に
野菜かな 野菜かな
植物な食物の学習に
元素記号 元素記号
元素記号の学習に

その他

こづかい帳 こづかい帳
計算力と金銭感覚を育もう
お絵かきプラス お絵かきプラス
メモや絵日記等に

このページの先頭へ