如何在常量文件中获取字符串资源的值?

Usa*_*war 5 android android-xml

我正在开发一个应用程序,我必须将字符串资源的值设为常量。我怎样才能做到这一点?请有任何想法。

字符串被放置在

应用程序/res/values/strings.xml

资源的名称是 app_version。现在我想将此应用程序版本转换为另一个文件中的常量字符串。任何帮助表示赞赏。

dev*_*ole 5

尝试context.getResources().getString(R.string.app_version)“上下文”是您的 Activity 或 Application 实例。

如果您的问题确实是关于获取应用程序的版本名称,则有更好的方法:

String versionName = getPackageManager().getPackageInfo(getPackageName(), 0).versionName;
Run Code Online (Sandbox Code Playgroud)

通过这种方式,您可以直接从 AndroidManifest 中检索信息,而不必对其进行两次维护。


Jus*_*eld 4

In Java: R.string.string_name 
In XML:@string/string_name
Run Code Online (Sandbox Code Playgroud)

R.string.app_version@string/app_version取自 strings.xml 是您的常量,并且将始终代表您在该 XML 文件中输入的值。

  • 呃,不是真的。R.string.string_name 是引用字符串的 ID(int)。OP 可能想要的字符串本身是完全不同的东西(字符串)。 (4认同)