アンドロイドのあれこれ
[PR]
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
Java書くのはまだ早い。Resourcesを見てみよう
Androidでは多くの種類のリソースを使うことができます。大きく分けてみると、XMLファイル、画像ファイルとその他データ。
さらっと書くので詳しく知りたければこちらで参考
Application Resources - http://developer.android.com/intl/ja/guide/topics/resources/index.html
さらっと書くので詳しく知りたければこちらで参考
Application Resources - http://developer.android.com/intl/ja/guide/topics/resources/index.html
作ったAndroidプロジェクトの初期リソース(res/)は以下のようになります。
drawableの中はアプリのアイコンやアプリに使う画像ファイルまたXMLファイル。drawable-hdpi、drawable-ldpi、drawable-mdpiは端末の解像度に合わせてファイルを分けることができます。
他にももっと細かくわけることもできます。画面サイズでdrawable-hdpi-800x480とか、言語別ならdrawable-jp(日本語用), drawable-th(タイ語用)など
layoutは文字通りアプリ画面のレイアウト設定のXMLファイルです。アプリのテキストやパーツ、ボタン、画像の配置はXML書いてここで簡単に設定できます。
画面の縦向き、横向きはlayout-landディレクトリを作って対応することができます。もちろんdrawable-landもできます。
valuesは「値」です。ここで各種値の定義ができます。たとえば、strings.xml、arrays.xml、styles.xml、テキスト型や配列型の定義できます。
初期に用意されたリソースタイプの他にもあります。
res/anim アニメーションの設定
res/menu メニューの設定
res/raw 音声ファイルや動画ファイルなど
res/color 色の定義、色の設定
res/xml その他の設定のXMLファイル
もっと知りたければこちらで参考: http://developer.android.com/intl/ja/guide/topics/resources/available-resources.html
Androidアプリのデザイン、見た目、パーツの配置はリソースでしか設定できないのか?いや、そんなことないです。
またJavaから定義しておいたリソースを読み取ることもできます。
drawableの中はアプリのアイコンやアプリに使う画像ファイルまたXMLファイル。drawable-hdpi、drawable-ldpi、drawable-mdpiは端末の解像度に合わせてファイルを分けることができます。
他にももっと細かくわけることもできます。画面サイズでdrawable-hdpi-800x480とか、言語別ならdrawable-jp(日本語用), drawable-th(タイ語用)など
layoutは文字通りアプリ画面のレイアウト設定のXMLファイルです。アプリのテキストやパーツ、ボタン、画像の配置はXML書いてここで簡単に設定できます。
画面の縦向き、横向きはlayout-landディレクトリを作って対応することができます。もちろんdrawable-landもできます。
valuesは「値」です。ここで各種値の定義ができます。たとえば、strings.xml、arrays.xml、styles.xml、テキスト型や配列型の定義できます。
初期に用意されたリソースタイプの他にもあります。
res/anim アニメーションの設定
res/menu メニューの設定
res/raw 音声ファイルや動画ファイルなど
res/color 色の定義、色の設定
res/xml その他の設定のXMLファイル
もっと知りたければこちらで参考: http://developer.android.com/intl/ja/guide/topics/resources/available-resources.html
Androidアプリのデザイン、見た目、パーツの配置はリソースでしか設定できないのか?いや、そんなことないです。
またJavaから定義しておいたリソースを読み取ることもできます。
<!-- res/values/strings.xml --> <?xml version="1.0" encoding="utf-8"?> <resources> <string name="drink">RedBull</string> <string name="food">カツ丼</string> <string name="dessert">Ice Cream Sandwich</string> </resources>
// MainActivity.java public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //リソースからテキストを取得 String drink = getResources().getString(R.string.drink); String food = getResources().getString(R.string.food); String dessert = getResources().getString(R.string.dessert); Log.v("STRING", "drink:" + drink); Log.v("STRING:", "food:" + food); Log.v("STRING:", "dessert:" + dessert); //リソースからテキストの配列を取得 String[] myPhone = getResources().getStringArray(R.array.my_phone); for (int a = 0; a < myPhone.length; a++) { Log.v("String Array","["+String.valueOf(a)+"] " + myPhone[a]); } //リソースから画像を取得 Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher); } }
//logcat V/STRING ( 307): drink:RedBull V/STRING: ( 307): food:カツ丼 V/STRING: ( 307): dessert:Ice Cream Sandwich V/String Array( 307): [0] HTC Magic V/String Array( 307): [1] Galaxy S V/String Array( 307): [2] Nexus S
COMMENT