Android - 将.java代码中的字符串提取到string.xml

时间:2015-07-13 11:00:54

标签: java android string android-studio multilingual

我知道将strings.xml文件用于所有硬编码字符串是一种好习惯,特别是如果您是 多语言应用 的开发者。
使用 layout.xml 文件一切顺利,您可以轻松使用:android:text="@string/Login_text"
但是 .java 文件呢? 例如, 最佳实践 从此代码中获取字符串(来自strings.xml等单独文件):

progress = new ProgressDialog(MainActivity.this);
    progress.setTitle("Some Title In Hebrew Language");
    progress.setMessage("Some Message In Hebrew Language");

我正在使用Android-Studio。

2 个答案:

答案 0 :(得分:4)

android:text="@string/Login_text"

getResources().getString(R.string.Login_text)
两者都是一样的。一种是XML方法,另一种是Class文件方法。

所以写下你的代码:

progress = new ProgressDialog(MainActivity.this);
    progress.setTitle(getResources().getString(R.string.sometext1)); 
    progress.setMessage(getResources().getString(R.string.sometext2)); 

答案 1 :(得分:2)

您还可以在string.xml中定义java字符串

你可以像以下一样使用它:

getString(R.string.string_name);