30

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

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

4

3 回答 3

40

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

因此,在values您将拥有strings.xml此内容的文件夹中:

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

values-fr一个strings.xml有这个内容的:

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

这为您节省了大量工作,而不是硬编码的方式:Android 会根据用户偏好自动选择正确的语言,您不必担心选择和显示该语言。

另请阅读本地化 | 安卓开发者

于 2012-08-03T11:36:49.170 回答
13

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

使用strings.xml你需要在一个地方更改它,而硬编码的值需要在每个活动中更改。

于 2012-08-03T11:40:07.920 回答
0

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

于 2015-11-26T05:19:30.837 回答