1. 定義字符串和數值
在strings.xml定義
<span style="font-size:18px;"><resources>
<string name="app_name">StringDemo</string>
<string name="city">青島</string>
</resources>
</span>
在Activity中使用
String city = getResources().getText(R.string.city);
Log.i(“city”, “city : ” + city);
或者使用
String city = getResources().getString (R.string.city);
Log.i(“city”, “city : ” + city);
2. 定義字符數組
在strings.xml定義
<resources>
<string name="app_name">StringDemo</string>
<string name="city">青島</string>
<string-array name="citys">
<item>北京</item>
<item>上海</item>
<item>濟南</item>
<item>青島</item>
</string-array>
</resources>
* 獲取String[]數組
String []citys = getResources().getStringArray(R.array.citys);
* 構建ArrayAdapter
ArrayAdapter adapter = ArrayAdapter.createFromResource(
this, R.array.citys, R.layout.item_tv);
3. 定義字體的顏色
TextView可以通過設置textColor屬性來設置,字體的顏色。但是TextView設置textColor屬性時,設置的是全部顯示內容字體的顏色。假如“Android的國際化”,“Android”是紅色,“國際化”是藍色,該怎麼設置呢?是不是需要用TextView拼接。我們可以這樣做:
<string name="worlds"><Data><![CDATA[<font color="#ff0000">Android</font>的<font color="#0000ff">國際化</font>]]></Data></string>
String worlds = getResources().getString(R.string.worlds);
Spanned ws = Html.fromHtml(worlds);
tv_set.setText(ws);
TextView可以顯示Html處理的文字。不懂的可以查看博文:http://blog.csdn.net/johnsonblog/article/details/7741972。Johnson大神對TextView使用Html處理的文字、圖片有詳細解析,拜讀一下,大有收穫。
4. %s變量文本格式:定義格式爲%1$f這樣的符號來代替,其中%1表示第一個位置的變量, $s表示爲字符串類。
Strings.xml
<string name="mine">今年我%1$d歲,讀%2$s.</string>
在Activity中使用:
String worlds = getResources().getString(R.string.mine, 25, "研1");
5.同時定義字體顏色和%s變量文本格式
<string name="input_code_1"><Data><![CDATA[我們已經給手機號碼 <font color="#4a9ce9">%1$s</font> 發送了驗證碼]]></Data></string>
在Activity中使用:
tvPrompt.setText(Html.fromHtml(getResources().getString(R.string.input_code_1, phone)));
strings.xml的使用暫時總結了這些用法,哪位童鞋還知道更多用法,請告訴我,我做下補充,感謝!
文章參考於:https://blog.csdn.net/IO_Field/article/details/50402504