如何使用string.xml文件翻译我的应用程序?

时间:2013-08-27 10:47:57

标签: android xml string android-activity multilingual

我创建了这一系列的xml文件

res/values/strings.xml     <--- The default language 'it'
res/values-en/strings.xml  <--- English

所以在我的string.xml中有一些,我重复一遍,我的应用程序的一些字符串用我的语言,但不是全部。例如,我有一些像这样的文本视图

TextView textView = (TextView)findViewById(R.id.Temperature);
textView.setText(Html.fromHtml("Temperature: "+ "<small> <font color='#59c3fa'>" + temperature + "°C</font></small>"));

string.xml文件中没有...我要添加每个textview吗?这个怎么运作?有人可以举个例子吗?

1 个答案:

答案 0 :(得分:1)

要从strings.xml获取字符串,您必须使用getResources().getString(R.string./*String name in the xml*/)

这将从相应的xml文件(values-en获取字符串,如果手机的语言环境是英语),并且如果在values-en中找不到字符串(或者语言环境不是发现),它从/res/values文件夹

中获取它

请确保您在strings.xml个文件中都映射了所有字符串,并且不对字符串进行硬编码(就像您在“温度:”中所做的那样)

textView.setText(Html.fromHtml("Temperature: "+ "<small> <font color='#59c3fa'>" + temperature + "°C</font></small>"));

改为使用:

textView.setText(Html.fromHtml(getResources().getString(R.string.temprature)+": "+ "<small> <font color='#59c3fa'>" + temperature + "°C</font></small>"));

查看此link了解详情。