- Home ›
- Android入門 ›
- 文字列や色のリソース定義 ›
- HERE
色リソースへリソースIDの割り当て
色のリソースの場合もレイアウトや文字リソースの場合と同じくリソースに対するIDが割り振られます。リソースの登録を行いましたら一度ビルドを行って下さい。その後で作成された「R.java」の中身を確認してみます。
/* AUTO-GENERATED FILE. DO NOT MODIFY.
*
* This class was automatically generated by the
* aapt tool from the resource data it found. It
* should not be modified by hand.
*/
package jp.javadrive.android;
public final class R {
public static final class attr {
}
public static final class color {
public static final int chocolate=0x7f030001;
public static final int olive=0x7f030000;
}
public static final class layout {
public static final int main=0x7f020000;
}
public static final class string {
public static final int app_name=0x7f040000;
}
}
上記のように「R」クラスの中の「color」クラスの中にstatic変数として定義が行われています。
<?xml version="1.0" encoding="utf-8"?> <resources> <color name="olive">#808000</color> <color name="chocolate">#d2691e</color> </resources>
今回登録した色のリソースは上記のようになっています。リソース名として指定した「olive」と「chocolate」に対して「R.java」ファイルの中でint型の変数名として定義されていることが分かります。
詳細は別のページで確認しますが、プログラムなどから参照する場合は「R.color.olive」のように参照でき、レイアウト用のXMLファイルなどから参照する場合は「@color/olive」のように参照できます。
文字列の場合と同じく色のリソースの場合にも登録されているファイル名は関係なく、リソースとして登録したリソース名が「color」クラス内の変数名として使われている点に注意して下さい。
では次のページで実際にプログラムから参照を行ってみます。
( Written by Tatsuo Ikura )