为什么要使用strings.xml?

时间:2012-08-03 11:35:41

标签: android

有人可以解释为什么硬编码字符串如此糟糕? 如果我硬编码字符串,我应该期待什么问题? 为什么有一个单独的字符串xml文件解决了这些问题?

在strings.xml中创建新元素是一项非常耗时的活动。

3 个答案:

答案 0 :(得分:35)

将字符串添加到strings.xml时,您可以轻松地将整个应用翻译成其他语言。

因此,在文件夹values中,您将strings.xml包含以下内容:

<string name="hello">Hello</string>

在具有此内容的values-fr a strings.xml中:

<string name="hello">Bonjour</string>

这可以为您节省 批次 的工作,而不是以硬编码的方式执行此操作:Android会根据用户偏好自动选择正确的语言,而您不必担心选择和显示这种语言。

另请阅读Localization | Android Developers

答案 1 :(得分:11)

另外,假设你有一个字符串,例如它是一个标题,在你的应用程序的每个活动中重复。现在假设一段时间后,您决定更改该标题。

使用strings.xml您需要在一个地方进行更改,而每次活动都需要更改硬编码值。

答案 2 :(得分:0)

字符串是一个简单的资源,使用name属性中提供的值(而不是XML文件的名称)引用。因此,您可以将字符串资源与一个XML文件中的其他简单资源组合在一个<resources>元素下。