Android Studio错误消息I18n

时间:2015-08-13 20:15:58

标签: android android-studio code-inspection

我收到一条错误消息:

  

[I18N]硬编码字符串"今天 - Sunny - 78/67",应该使用@string   资源。

如何解决此错误?

代码行是:android:text="Today - Sunny - 78/67"

3 个答案:

答案 0 :(得分:1)

i18n是国际化的缩写。 Android Studio只是暗示您设置文本的方式不允许您轻松翻译它。

相反,您应该将字符串放在res / values文件夹中的strings.xml文件中:

<resources>
  <string name="my_string">Today - Sunny - 78/67</string>
</resources>

然后在TextView上引用该字符串,如下所示:

android:text="@string/my_string"

这将允许您为西班牙语字符串创建另一个文件,res / values-es / strings.xml,您可以将翻译添加到:

<resources>
  <string name="my_string">Hoy - Soleado - 78/67</string>
</resources>

如果用户的语言环境是西班牙语,那么该字符串将自动被选中。

答案 1 :(得分:0)

这意味着您不应该在XML中明确地编写文本。您应该使用/Values/Strings.xml来保存字符串值。

查看左侧的文件夹,了解值。该文件已存在。你只需要在其中添加你的字符串。

为了记录,这通常不会产生错误,我现在会崩溃&#34;品种。它通常只是一个警告。

答案 2 :(得分:0)

你可以把鼠标放在问题行上并使用android studio热键 - alt + enter。之后,您可以选择&#34;提取字符串资源&#34;

Sory我的英语不好=)