比方說,我有這樣的字符串:處理在res的Android動態文本字符串/值
你的球員有一個良好門將技能和體面人技能
現在不是在部分字符串的粗體總是相同的,運行時已知的是粗體部分。
所以我怎麼會做這樣的事情:
你的球員有一個{VAR1}門將技能和{VAR2}人技能
,然後在運行時填補這些VAR提供正確的值?
我不想來連接字符串一樣:
"You player has a" + var1 + "keeper skill and a" + var2 + "people skill"
比方說,我有這樣的字符串:處理在res的Android動態文本字符串/值
你的球員有一個良好門將技能和體面人技能
現在不是在部分字符串的粗體總是相同的,運行時已知的是粗體部分。
所以我怎麼會做這樣的事情:
你的球員有一個{VAR1}門將技能和{VAR2}人技能
,然後在運行時填補這些VAR提供正確的值?
我不想來連接字符串一樣:
"You player has a" + var1 + "keeper skill and a" + var2 + "people skill"
你需要看到Android的字符串資源指南。有一種方法可以提供靜態字符串,以後可以用變量格式化。
http://developer.android.com/guide/topics/resources/string-resource.html#FormattingAndStyling
您將定義字符串如
<resources>
<string name="welcome_messages">Hello, %1$s! You have <b>%2$d new messages</b>.</string>
</resources>
後來在代碼,你可以在Java中的strings.xml
You player has a %1$d keeper skill and a %2$d people skill
更換
Resources res = getResources();
String text = String.format(res.getString(R.string.welcome_messages), username, mailCount);
CharSequence styledText = Html.fromHtml(text);
tnx,你的答案被接受爲鏈接和代碼的完整性。 – dierre
有關在http://developer.android上格式化字符串標記的更多信息。com/reference/java/util/Formatter.html – stackuser83
getString(R.string.article_stats, var1, var2);
是的,看到android devguide
下如果需要使用String.format(String, Object...)
格式化你的字符串,那麼你可以把你的格式參數的字符串資源這樣做。例如,用下面的資源:
<string name="welcome_messages">Hello, %1$s! You have %2$d new messages.</string>
在此示例中,格式字符串有兩個參數:%1 $ s是一個字符串和%2 $ d是十進制數。您可以從您的應用程序像這種格式與arguements字符串:
Resources res = getResources();
String text = String.format(
res.getString(R.string.welcome_messages),
username, mailCount);
在字符串的XML你在CDATA標籤定義HTML語法像
<![CDATA[<b> %1$s bought </b>, last purchased from %2$s <b> %3$s </b>]]>
,並在你的java類
String detail = String.format(getString(R.string.detail),15,"New Delhi","23 mins ago");
detailView.setText(Html.fromHtml(detail));
試過每個解決方案只有這一個working..cheers – maheshsgr
''Resources \ getString(resId,...)''或者'Context.getString(resId,...)'''''你的玩家有%1 $ s守護者技能和%2 $ s人技能'''你正在尋找什麼? – Salw