建立Android專案時就會自動產生strings.xml(位置於專案/res/values/strings.xml),這簡單來說就是把文字部份拉出來整理,需要做多國語言時相當的重要,就算不是要作多國語言建議還是用一下,不然哪天為了找一個字串還要找半天,而且裡面不只可以放單一字串,字串的陣列也可以。
單放字串<string name="app_name">我是懶人</string>
app_name就是這字串的帶稱想要使用時在一般xml檔就如下列用法<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/app_name">
</TextView>
但總是會遇上需要在.java內要用上的時候,以上方那個TextView為例text.setText(getString(R.string.app_name));
字串陣列在strings.xml檔內<string-array name="myArray">
<item>11111</item>
<item>22222</item>
<item>33333</item>
</string-array>
<!-- 也可以直接抓取string內容來用 -->
<string name="red">Red</string>
<string name="orange">Orange</string>
<string name="yellow">Yellow</string>
<string name="green">Green</string>
<string name="blue">Blue</string>
<string name="black">Black</string>
<string-array name="colorArray">
<item>@string/red</item>
<item>@string/orange</item>
<item>@string/yellow</item>
<item>@string/green</item>
<item>@string/blue</item>
<item>@string/indigo</item>
<item>@string/violet</item>
</string-array>
取得陣列Resources res = getResources();
String[] array = res.getStringArray(R.array.myArray);
//直接寫在一起
String array[] = getResources().getStringArray(R.array.colorArray);
相關連結
Android Developers
Android Developers R.string
Android Resources strings
by Isken Huang - 11/30/2010 - Android
訂閱:
張貼留言 (Atom)
hello,thank your share.
回覆刪除