Problem
我希望能够在Android XML代码中做类似的事情:
<string name="title">@string/app_name test</string>
<string name="title2">@string/app_name @string/version_name</string>
关于代码的第一行,编译器显示此错误
找不到与给定名称匹配的资源(位于'title‘,值为'@string/app_name test')
关于第二行代码,编译器显示了这个错误
找不到与给定名称匹配的资源(位于'title2‘,其值为'@string/app_name @string/version_ name ')
问题
有人知道如何在Android XML中连接多个字符串吗?
基本原理
在许多代码位置(在本例中为XML)中复制变量值是不好的做法。
发布于 2011-04-23 22:54:39
我自己也试过做类似的操作,但我被告知这在Android中是不可行的。
有趣的是,您会收到一条错误消息,指出确实可以这样做,但由于资源匹配中的错误,现在不能这样做。(您确定在"title“和"title2”字符串之前定义了"app_name“和"version_name”字符串吗?)
但是,您可以执行以下操作:
<string name="title">%1$s test</string>
<string name="title2">%1$s %2$s</string>
<string name="app_name">AppName</string>
<string name="version_name">1.2</string>
然后从Java代码中执行如下操作:
Resources res = getResources();
String appName = res.getString(R.string.app_name);
String versionName = res.getString(R.string.version_name);
String title = res.getString(R.string.title, appName);
String title2 = res.getString(R.string.title2, appName, versionName);
更多关于formatting strings in Android的信息。
希望这能有所帮助。
https://stackoverflow.com/questions/5764548
复制相似问题