如何使用字符串.xml文件翻译我的应用程序



我创建了这个系列的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>"));

字符串.xml文件中没有。。。我必须添加每个文本视图吗?它是如何工作的?有人能以身作则吗?

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

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

只需确保在两个strings.xml文件中都映射了所有字符串,并且不要对字符串进行硬编码(就像对"Temperature:"所做的那样)

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>"));

有关详细信息,请查看此链接。

最新更新