我想知道是否有辦法將XML文件中定義的<string>
元素插入到另一個<string>
元素中,只需使用XML即可。Android:如何將<string>元素注入到XML中的另一個<string>元素中?
例如,我可以有:
<string name="author">Francesco</string>`
,我期待這樣的事情:
<string name="about_application">Author: @string/author</string>`
使getString(R.string.about_application)
會導致 「作者:弗朗西斯」。
我知道我可以使用String.format(string, formatArgs)
例如像在Java代碼中的兩個要素結合起來:
<string name="author">Francesco</string>
<string name="about_application">Author: %1$s</string>`
,然後在代碼中使用
String.format(getString(R.string.about_application), getString(R.string.author))
,但我想這樣做的XML直。
任何人都可以建議我一種方法嗎?
謝謝!當我從同一個文件中的xml元素引用一個內部實體時,它工作的很好,而我有問題需要引用另一個xml文件中定義的外部實體。無論如何,我不確定這種機制是否應該與Android/res/values/xml文件一起使用,我認爲它與Android的「標準」管理方式有一點距離。 – 2010-09-16 09:55:52
這就像在間接方向上的間接尋址:-)。問題可能在於翻譯string.xml(其他文件夾中的副本)時,您忘記本地化&auth;。此外,每個翻譯仍然需要包含&auth;的所有字符串標記。但是,這是最好的,因爲它必須是靜態的(所以xml文件可以變成二進制文件)。 – pjv 2012-03-31 17:35:11