2010-05-03 48 views
8

是否有可能在strings.xml中引用另一個包含其他文本的字符串中的一個字符串?是否可以在strings.xml中引用另一個字符串?

東西是允許在XML,並會實現這樣的效果:

<string name="string_one">My string</string> 
<string name="string_two">Here it is: android:id="@string/string_one"</string> 

回答

8

我不認爲這是可能的。 我最常做的是:

<string name="string_one">My string</string> 
<string name="string_two">Here it is: %s" </string> 

,並在Java代碼:

String.format(getString(R.string.string_two), getString(R.string.string_one)); 

我做這種事情的參數多態封郵件,如:「你有%d新郵件」。

+0

權,但這並不例如在佈局中使用的工作字符串XML文件,例如。 – ChaimKut 2010-05-03 12:02:09

+0

@ChaimKut:例如? – Macarse 2010-05-03 13:21:16

+0

這是不可能做到這一點靜態? F.E.如果你想有兩個不同名字的字符串,但是總是相同的,你可以把第二個字符串和第一個字符串聯繫起來,所以你只需要改變它。這兩者之間可能存在靜態鏈接。所以這不可能? – 2012-09-11 18:03:41

10

您可以爲您希望在其他的字符串使用字符串自己的XML實體,並使用它們像這樣:

<?xml version="1.0" encoding="utf-8"?> 
<!DOCTYPE resources [ 
    <!ENTITY app_name "My App"> 
]> 
<resources> 
    <string name="app_name">&app_name;</string> 
    <string name="welcome_message">Welcome to &app_name;</string> 
</resources> 
+0

爲我工作,T​​HX – xiaoyee 2016-09-19 11:27:03

相關問題