種類 | 内容 |
---|---|
文字列 | 画面に表示する文字列を指定するリソース |
色 | フォントや背景などの色を指定するリソース |
大きさ | フォントサイズなどを指定するリソース |
画像 | 画像のリソース |
アニメーション | 画像が文字列などをアニメーションさせるための情報を指定するリソース |
レイアウト | レイアウトを指定するリソース |
スタイル・テーマ | レイアウトで使用するデザインを指定するリソース |
resフォルダ以下に、xmlファイル、または画像ファイル(png)を配置する
構成 | 内容 |
---|---|
res/animフォルダ | アニメーション定義のxml |
res/drawableフォルダ | 画像ファイルまたは、画像を定義したxmlファイル |
res/layoutフォルダ | 画面レイアウト定義のxml |
res/valuesフォルダ | 値を定義したxml |
※フォルダ名の後ろに、「-xxxx」をつけることで、解像度や言語によって使われるリソースを切り替えることが可能
Eclipseで、Androidアプリケーションを作成すると、
res/values/strings.xml
というファイルが自動で作成されます。
このファイルが、文字列を定義しているリソースファイルです。
リソースファイルは、resourcesという要素をルート要素とするXMLです。
定義したい文字列を要素の内容として書き、その文字列に与えたい名前を、name属性として記述します。
res/values/strings.xml
というファイルが自動で作成されます。
このファイルが、文字列を定義しているリソースファイルです。
リソースファイルは、resourcesという要素をルート要素とするXMLです。
<?xml version="1.0" encoding="utf-8"?> <resources> </resources>ひとつの文字列は、ひとつのstring要素によって定義されます。
定義したい文字列を要素の内容として書き、その文字列に与えたい名前を、name属性として記述します。
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">リソース演習</string> </resources>
文字列と同様に、resourcesという要素をルート要素とするXMLを書くことによって定義することができます。
ひとつの色は、color要素によって表されます。
定義したい色を要素の内容として書き、その色に与えたい名前を、name属性として記述します。
色は、16進数の左側にシャープ(#)を書いたもので表します。形式は、次の4種類のいづれかを使用します。
R:赤
G:緑
B:青
を示す、16進数の一桁を意味します。
例えば、赤は次のように定義します。
ひとつの色は、color要素によって表されます。
定義したい色を要素の内容として書き、その色に与えたい名前を、name属性として記述します。
色は、16進数の左側にシャープ(#)を書いたもので表します。形式は、次の4種類のいづれかを使用します。
#RGB #ARGB #RRGGBB #AARRGGBBA:アルファ値
R:赤
G:緑
B:青
を示す、16進数の一桁を意味します。
例えば、赤は次のように定義します。
<?xml version="1.0" encoding="utf-8"?> <resources> <color name="red1">#F00</color> <color name="red2">#FF0000</color> <color name="red3">#FFFF0000</color> </resources>
文字列や色と同様に、resourcesという要素をルート要素とするXMLを書くことによって定義することができます。
ひとつの大きさは、dimen要素によって表されます。
定義したい大きさを要素の内容として書き、その大きさに与えたい名前を、name属性として記述します。
大きさは、10進数と単位によって表現します。単位は、次の6種通のうち、いづれかを使用できます。
次のように記述します。
ひとつの大きさは、dimen要素によって表されます。
定義したい大きさを要素の内容として書き、その大きさに与えたい名前を、name属性として記述します。
大きさは、10進数と単位によって表現します。単位は、次の6種通のうち、いづれかを使用できます。
単位 | 説明 |
---|---|
mm | ミリメートル |
in | インチ。1インチは、約25.4ミリメートル |
pt | ポイント。1ポイントは、72分の1インチ(約0.35ミリメートル) |
px | ピクセル。画面の実際のピクセル数で、解像度によって変化する |
dp(dip) | 画面の物理的な密度に基づいた抽象的な単位。160dpiの画面で、1dp = 1pxになる。解像度によらず一定の大きさを表現できる |
sp | 倍率非依存ピクセル。ユーザが設定しているフォントサイズを基準に、拡大される。フォントサイズを指定する場合は、この単位が推奨されている |
<?xml version="1.0" encoding="utf-8"?> <resources> <dimen name="textview_height">30dp</dimen> <dimen name="textview_width">150dp</dimen> <dimen name="font_size">16sp</dimen> </resources>
画像リソースを、DPI(dot per inchの略、ピクセル解像度)ごとに用意することで、自動で端末のDPIに合わせた画像を読み込む仕組みがあります。
改造度に依存しない画像は、drawable-nodpiにおくのがよさそう。
(参照:http://developer.android.com/guide/practices/scree...)
フォルダ名 | 用途 |
---|---|
res/drawable-ldpi | 低解像度扱いの画像 |
res/drawable-mdpi | 中解像度扱いの画像 |
res/drawable-hdpi | 高解像度扱いの画像 |
res/drawable-nodpi | 解像度を意識しない画像 |
res/drawable | Android1.5までの指定方法。Android1.6以上でも指定出来るが、mdpi扱いになってるらしい |
改造度に依存しない画像は、drawable-nodpiにおくのがよさそう。
(参照:http://developer.android.com/guide/practices/scree...)
リソースを定義すると、Rクラスにリソースを参照するためのIDが自動生成されます。 XMLファイル、またはJAVAプログラムから、そのリソースIDを指定することで参照することができます。
public final class R { public static final class attr { } public static final class drawable { public static final int icon=0x7f020000; } public static final class id { public static final int button1=0x7f050000; public static final int button2=0x7f050001; public static final int button3=0x7f050002; public static final int textView01=0x7f050003; } public static final class layout { public static final int main=0x7f030000; public static final int sub=0x7f030001; } public static final class string { public static final int app_name=0x7f040001; public static final int hello=0x7f040000; public static final int sub_activity_name=0x7f040002; } }
<?xml version="1.0" encoding="utf-8" ?> <resources> <string name="hello">こんにちは</string> </resources>
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TexView android:id="@+id/textView01" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> </LinearLayout>
<?xml version="1.0" encoding="utf-8" ?> <resources> <string name="hello">こんにちは</string> </resources>
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TexView android:id="@+id/textView01" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> </LinearLayout>
このページへのコメント
hering uofm sprayers
http://download.recipe.catalog.4.4.softwarenvm.com
gDC1hk <a href="http://iqsrjpmxdqgf.com/">iqsrjpmxdqgf</a>, [url=http://oslhylhdwjqj.com/]oslhylhdwjqj[/url], [link=http://asxghdqibsif.com/]asxghdqibsif[/link], http://sdmbdgcsahzv.com/
http://ryfabqnqbhnb.com/
lcVsIA <a href="http://qscxjinixsbf.com/">qscxjinixsbf</a>, [url=http://ywpuspyyhsbj.com/]ywpuspyyhsbj[/url], [link=http://clegntnjcehx.com/]clegntnjcehx[/link], http://rptppssvobtx.com/
3QolGt <a href="http://zgynasmirnmk.com/">zgynasmirnmk</a>, [url=http://xsdzxsxmttlz.com/]xsdzxsxmttlz[/url], [link=http://lwatjmmwpdmz.com/]lwatjmmwpdmz[/link], http://zbsdykikfoji.com/
http://wgckqkebrfld.com/
Nbmg8m <a href="http://mtwajibadvfq.com/">mtwajibadvfq</a>, [url=http://randfidyfbsl.com/]randfidyfbsl[/url], [link=http://llrmqctuijdl.com/]llrmqctuijdl[/link], http://abvgxyamthfq.com/
http://mkgttbtcbzoh.com/