res/values配下にXMLファイルを置くことで、以下の様々な定義ができます。
・色の定義
・文字の定義
・スタイルの定義
例では慣例に従ってそれぞれ別ファイルにしていますが、resourcesタグで囲っていればどのようなファイルでも(一つのファイルでも)構いません。
また「values-ja」に定義ファイルを置くことで、日本語とその他の言語で値を切り替えることができます。
res/values/colors.xml(色の定義)
<?xml version="1.0" encoding="utf-8"?> <resources> <color name="white">#ffffffff</color> <color name="black">#ff000000</color> </resources>
res/values/string.xml(文字の定義)
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="hello">Hello World</string> <string name="app_name">MyActivity</string> </resources>
res/values/styles.xml(スタイルの定義)
<?xml version="1.0" encoding="utf-8"?> <resources> <style name="my_style"> <item name="android:layout_width">wrap_content</item> <item name="android:layout_height">wrap_content</item> <item name="android:layout_margin">10dp</item> <item name="android:padding">10dp</item> <item name="android:orientation">vertical</item> <item name="android:typeface">serif</item> <item name="android:textSize">24sp</item> <item name="android:textColor">@color/white</item> </style> </resources>
例えばレイアウトでこのように使用します。
res/layout/main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:background="@color/white" android:text="@string/app_name" style="@style/my_style" /> </LinearLayout>
参考: レイアウトの部品化
参考: 背景形状(shape)の定義
コメント