スタイル リソース

スタイル リソースは、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!" />