スタイル リソース

スタイル リソースは、UI の形式と外観を定義します。スタイルは、個々の View に適用することも(この場合はレイアウト ファイル内から)、Activity 全体やアプリ全体に適用することもできます(この場合はマニフェスト ファイル内から)。

スタイルの作成方法と適用方法については、スタイルとテーマをご覧ください。

注: スタイルは、name 属性で提供される値を使用して参照されるシンプルなリソースです(XML ファイルの名前を使用して参照されるわけではありません)。そのため、単一の XML ファイル内で、単一の <resources> 要素の下で、スタイル リソースを他のシンプルなリソースと組み合わせることができます。

ファイルの場所:
res/values/filename.xml
ファイル名は任意です。要素の name がリソース ID として使用されます。
リソースの参照:
XML 内: @[package:]style/style_name
構文:
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style
        name="style_name"
        parent="@[package:]style/style_to_inherit">
        <item
            name="[package:]style_property_name"
            >style_value</item>
    </style>
</resources>
要素:
<resources>
必須。ルートノードにする必要があります。

属性はありません。

<style>
1 つのスタイルを定義します。<item> 要素を格納します。

属性:

name
文字列。必須。スタイルの名前。ビュー、アクティビティ、アプリにスタイルを適用する際のリソース ID として使用されます。
parent
スタイル リソース。このスタイルがスタイル プロパティを継承する継承元スタイルへの参照。
<item>
スタイルのプロパティを 1 つ定義します。この要素は、<style> 要素の子要素にする必要があります。

属性:

name
属性リソース。必須。定義するスタイル プロパティの名前。必要に応じてパッケージ プレフィックスを付けます(たとえば、android:textColor)。
例:
次のスタイル用 XML ファイルを res/values/ に保存するとします。
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="CustomText" parent="@style/Text">
        <item name="android:textSize">20sp</item>
        <item name="android:textColor">#008</item>
    </style>
</resources>
次の XML ファイルは、上記のスタイルを TextView に適用します(res/layout/ に保存)。
<?xml version="1.0" encoding="utf-8"?>
<EditText
    style="@style/CustomText"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Hello, World!" />