我有一些阵列,其中一个是旋转器,但我怀疑这很重要。
无论如何我需要将这些翻译成其他语言。我的程序是一个Android应用程序,我已经在大多数应用程序中使用@string,但阵列正在踢我的屁股。
这是微调器阵列。
private static final String[]paths = {"Click to select", "One", "Two", "Three"};
我究竟如何翻译数组中的文字?我在其他网站上尝试了几种方法,但都无法构建。
答案 0 :(得分:1)
我终于解决了这个问题。
String.xml
<string-array name="paths_array">
<item>Click to select</item>
<item>One</item>
<item>Two</item>
<item>Three</item>
</string-array>
在代码(java文件)
中 String[] paths;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.yourlayout);
paths = getResources().getStringArray(R.array.paths_array);
}
超级简单,我在谷歌LOL的Android资源网站上发现它我以为我曾尝试过一次,但在查看XML条目后,我意识到它与我之前尝试过的完全不同。
现在编译和运行完美,最终可以翻译微调器。
感谢所有的帮助,因为它引导我走上正确的道路。
答案 1 :(得分:0)
只需在运行时解析字符串,并将这些已解析的字符串放入数组中。
String s1 = context.getResources().getString(R.string.s1);
String s2 = context.getResources().getString(R.string.s2);
String s3 = context.getResources().getString(R.string.s3);
String s4 = context.getResources().getString(R.string.s4);
String[] paths = { s1, s2, s3, s4 };
在你的字符串资源文件中:
<string name="s1">Click to select</string>
<string name="s2">One</string>
<string name="s3">Two</string>
<string name="s4">Three</string>