在開發中,會有動態配置字符串其中的某些字符,如何使用字符中的占位符,並且在代碼動態替換占位符實現動態配置字符串!
1.定義字符串時,再string文件添加字符串:
注意!記得要在字符文件中加上這些:
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
1 <string name="text1">i am %1$d years old, i am a %2$s</string>
屬性值定義如下:
%n$m[d/f/s] 表示 第n個參數,前面有m個空格(0m表示有m個0,浮點數k.m,表示小數點前保留k位,小數點后保留m位),d為整數,f為浮點數,s為字符串。
2.在代碼中使用:
1 String text1 = Context.getResources().getString(R.string.text1); 2 //注意,Andorid中的Context.getString()與Context.getResources().getString()是一樣的,詳細可看Context源碼0.0 3 String text2 = String.format(text1,25,"engineer");//"i am 25 years old, i am a engineer"
使用String.format()方法,第一個參數為字符串,后面依次為替換占位符的字符串。