スタイルを使って属性を一括で管理する方法

layoutにはスタイルを使って、属性を別ファイルとして指定することができます。
スタイルを使用することで、一括で共通の属性の設定を行うことができます。
また属性値を一括で管理できるので、属性値を変更するときに1箇所で変更ができます。

[参考記事] テーマ機能を使ってアプリケーション全体にスタイルを適用させる方法

スタイルを使用するには/res/valuesフォルダにスタイル用のxmlファイルを配置します。
xmlファイルであれば、ファイル名は何でもいいです。


[参考記事] Androidのlayoutで使用できるパーツの一覧 ビュー(部品)
[参考記事] よく使うUIパーツのプロパティ
たとえばstyles.xmlファイルとして設置したファイルの内容を次のように書きます。

<?xml version="1.0" encoding="utf-8"?>
<resources>
  <style name="CommonText">
    <item name="android:layout_width">300px</item>
    <item name="android:textColor">#00FF00</item>
    <item name="android:background">#ff0000</item>
  </style>
</resources>

このように書くことで、layout用のxmlで次のように指定すると、1箇所で属性を管理できます。

<TextView style="@style/CommonText" />

styleにparent属性を使用することで、sytleの継承をすることができます。

<?xml version="1.0" encoding="utf-8"?>
<resources>
  <style name="CommonText">
    <item name="android:layout_width">300px</item>
    <item name="android:textColor">#00FF00</item>
    <item name="android:background">#ff0000</item>
  </style>
  <style name="HeaderText" parent="CommonText">
  </style>
  <style name="BodyText" parent="CommonText">
    <item name="android:paddingTop">10px</item>
    <item name="android:layout_marginBottom">30px</item>
  </style>
</resources>

関連記事

スポンサーリンク

NULLIF関数 等しい場合にNULLを返す

ホームページ製作・web系アプリ系の製作案件募集中です。

上に戻る