数组中的语言翻译

时间:2015-06-17 16:47:05

标签: android internationalization

我有一些阵列,其中一个是旋转器,但我怀疑这很重要。

无论如何我需要将这些翻译成其他语言。我的程序是一个Android应用程序,我已经在大多数应用程序中使用@string,但阵列正在踢我的屁股。

这是微调器阵列。

    private static final String[]paths = {"Click to select", "One", "Two", "Three"};

我究竟如何翻译数组中的文字?我在其他网站上尝试了几种方法,但都无法构建。

2 个答案:

答案 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>