第一種方法:
在string.xml中進行操作
<resources xmlns:tools="http://schemas.android.com/tools">
<string name="app_name">MyStringDemo</string>
<!--不加空格-->
<string name="test">我今年<tools id="xxx">%1d</tools>歲了犬缨,上<tools id="xxx">%s</tools>年級!</string>
<!--加空格-->
<string name="test1">我今年<tools id="xxx">%1$3d</tools>歲了从隆,上<tools id="xxx">%2$9s</tools>年級筑累!</string>
</resources>
在代碼中使用的地方只需要調(diào)用String類的format方法:
mTextView = (TextView) findViewById(R.id.text_);
mTextView.setText(String.format(getResources().getString(R.string.test1),8,"二"));
輸出的情況:
我今年8歲了,上二年級叙淌!
我今年 八歲了,上 二年級愁铺!
X%符號類的解釋:
d%表示整數(shù)鹰霍;
f%表示浮點型;
s%表示字符串類型
%1$3d表示String類格式化的第一個是整型茵乱,3個空格茂洒;
%2$9s表示string類格式化的第二個是字符串類型,9個空格瓶竭;
第二種方法:
1.整型 :1%$d
<string name="test2">我今年%1$5d歲了</string>
mTextView.setText(String.format(getResources().getString(R.string.test2),8));
2字符串類型:1%$s
<string name="test3">我叫%1$s,來自%2$s</string>
mTextView.setText(String.format(getResources().getString(R.string.test3),"張三","北京"));
3.還有插入html格式
<string name="test4"><![CDATA[<b>應(yīng)付:</b> <font color=#F09B02>¥%1$.2f</font>]]></string>
mTextView.setText(Html.fromHtml(String.format(getResources().getString(R.string.test4),23.444)));
<string name="seller_order_good_summary"><![CDATA[
共<font color=#f37214>%1$d</font>件,合計: <font color=#f37214>¥%2$.2f</font>
]]> </string>
實現(xiàn)的效果: