It’s now or never

IT系の技術ブログです。気になったこと、勉強したことを備忘録的にまとめて行きます。

【Android】Styleの使い方

スタイルとはなに?

レイアウト属性とその値のセットをいくつか組み合わせて, 1つのIDで使用できるように定義したもです。

何のために使用する?

複数のレイアウト属性を共通で使いまわすために使用します。

例えばテキストの”フォント”、”フォントサイズ”、”フォントカラー”などの スタイルのセットを共通で使いまわすことができます。

どうやって使う?

res/values/の配下にxmlファイルを配置します。

idをソース上で使用する場合は、(R.style.*)として参照します。

<?xml version="1.0" encoding="utf-8"?>
<resources>
  <style name=“[id名]”>
    <item name="android:textStyle">italic</item>
    <item name="android:textColor">#ffffff</item>
  </style>
  <style name="[id名]" parent="@style/FontAttr">
    <item name="android:textSize">16sp</item>
  </style>
</resources>

layout.xml上で定義する場合は、 style属性に@style/[id名]で参照できます。

<TextView style="@style/[id名]”
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="style text"
        />

どんなもの(スタイル)が定義できる?

<item>に定義できる属性は、classリファレンスにサポートしているXML属性が記載されています。

親のスタイルを継承した場合

定義したスタイルを継承して新たなスタイルを作成することが可能です。 その場合は、<style>タグにparent属性を定義します。

例:

<style name=“[id名]” parent="@style/[親のid]”>
    <item name="android:textSize">16sp</item>
</style>