素人のアンドロイドアプリ開発日記

xmlのコンテンツ

配列のデータを定数で扱う(from XML)

2011.02.08

文字列や色のデータと同様に配列も扱う事ができます。

文字列を定数で扱う

と同じようにファイルを作成する。

ファイル名はarrays.xmlで作成。

 

しかし、【Resources】で【name】を決めた後に配列に関しては、直接arrays.xmlを修正する必要があります。

 

<?xml version="1.0" encoding="utf-8"?>
    <resources>
    </resources>

となっている。

arrayに関しては、arrayタグを用いて、name属性で配列名を決めて、

itemタグを用いて、配列の中身を決める事ができる。

<?xml version="1.0" encoding="utf-8"?>
<resources>
 <array name="test">
 <item>12</item>
 <item>24</item>
 </array>
</resources>

 

上記のように配列で数値列を格納できる。

また、配列を追加すると以下のようになる。

<?xml version="1.0" encoding="utf-8"?>
<resources>
 <array name="test1">
 <item>12</item>
 <item>24</item>
 </array>
 <array name="test2">
 <item>"one"</item>
 <item>"two"</item>
 </array>
</resources>

以上のように配列の中身を作成できる。

また配列から情報を取り出す際には要素毎に異なる

1、整数の配列

getResources().getIntArray(R.array.配列名)

2、文字列の配列

getResources().getStringArray(R.array.配列名)

 

以上で、配列のデータをjavaに読み込む事ができました。

個人的には、設定のリストを表示をする部分で使用する事が多いです。

カテゴリー:xml

色のデータを定数で扱う(from XML)

2011.02.08

色のデータも文字列と同様に定数で扱う事ができます。

文字列を定数で扱う

と同様にしてxmlファイルを作成してみます。

xmlのファイル名は通例としてcolors.xmlなどに設定をします。

 

valueの値に関しては下記のいずれかの色のフォーマットに沿った形式である必要があります。

 

1、RGB16進数1桁で指定

ex:#66e

2、ARGB16進数1桁で指定

ex:#033f

3、RGB16進数2桁で指定

ex:#6666ee

4、ARGB16進数2桁で指定

ex:#003333ff

 

また値を取得の際はint型の定数となるのでjavaで利用をする場合には

 

int i = getResources().getColor(R.color.変数名)

 

として、intで取得をして、色の設定をする事ができる。

 

カンタンな例を書きます。

values/color.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
 <color name="normal">#fafafa</color>
 <color name="on">#dddddd</color>
</resources>

で設定をした場合に、例えば、main.xmlの中とかで、

backgroundを設定する時に

android:background=”@color/list_on”

とか、すると、色の指定を出来なかったところに色の指定ができるようになります。

自分で名前にルールを付けてセットを作っておいてもいいかもしれません。

 

結構、面倒な部分ですが、使うと便利といった情報なので、分からなくても無理せず、他のところからつめていけば案外、

分かる時がくるかもしれません!

カテゴリー:xml

文字列を定数で扱う(from XML)

2011.02.08

androidアプリではxmlで定数を管理する事ができます。

 

もちろんクラス内でも作成する事はできますが、

xmlを用いて作成をしてみましょう。

 

ファイルを作成したら、

ツールバーから下記のボタンを選択します。

xmlmaker

 

クリックをするとダイアログが出現するので、

Projectには対象のプロジェクト名

Fileには「strings.xml」と記入をしてresourceはValueを選択するとxmlが作成されますが、

最初にprojectを作成した際に【res】の中に【values】と言うディレクトリがあり、

その中に既にstrings.xmlが作成されているかと思うので、そちらを利用します。

(追加で文字列ファイルなどが必要な場合には、任意の名前.xmlを作成してください。)

 

strings.xmlをeclipseで開くと下にタブが出現して

【Resources】と【strings.xml】を選べるようになります。

 

変数の作成は【Resources】を選ぶと楽です。

【Resources】で【Add】をクリックするとダイアログが表示されます。

 

どのResourceを増やすかが出ますので、

【String】を選択して、【OK】を押しましょう。

 

新しくできたstringのボタンをクリックすると値の設定画面が出現します。

 

stringset

 

そこで、【name】に変数名、【value】に定数値をいれます。

 

ですが、最近は上記のがめんどうくさくなってしまい、下記の形でコピペして複製して使う事が多いです。

<string name=”name”>value</string>

 

下記のような形でjavaで文字列を利用する事ができます。

 

String s = getResources().getString(R.string.name)

で、クラスに変数の値が取得できます。

 

レイアウトのxmlからなども

android:text=”@string/name”

のような形でカンタンに利用ができます。

 

なのですが、ちょっと面倒くさいと思ったら、

“value”

で普通に表示できるので、飛ばしちゃってもよいかと思います。

 

以上で完了です。

 

追伸:

このあたりのエントリは、自分でも手探りで勉強していた為、若干意味不明な部分もあるかと思います。時間を見つけて修正させていただきますので、ご了承いただければと思います。

 

カテゴリー:xml

公開中のアプリ、是非ダウンロードしてみてください

2chまとめのたね

RSSを利用してさまざまなブログの情報をキュレーションしてくれるアプリ

インストールする

ひらがな戦記

OPENGL ES2 を利用したカルタのソーシャルゲーム

インストールする