在android中,我们可以将字符串值存储在strings.xml文件中或存储在某些常量类中作为静态最终变量.在某些情况下,是否有某些原因可以选择一个在另一个上?
小智 5
简而言之:
代码中 使用的值:使用always constants class.Advantage:代码保持集成,您的包可以在其他项目/上下文中使用.你不能用string.xml做到这一点,因为它不随你的包运输.
在UI中显示的值: 使用string.xml.优点:您可以使用本地化来显示翻译文本.
当两种选择都可行时,可能会出现某种情况.然后,您必须确定其相关值的存储位置.
作为一般规则,请使用 ,strings.xml因为 android 使用该 XML 来将您的应用程序翻译成不同的语言,而对于硬编码的字符串则无法做到这一点。
关于本地化的官方android 指南说如下:
将所有字符串移至 strings.xml 中
当您构建应用程序时,请记住不要对任何字符串进行硬编码。相反,将所有字符串声明为默认 strings.xml 文件中的资源,这样可以轻松更新和本地化。strings.xml 文件中的字符串可以被提取、翻译并集成回您的应用程序(使用适当的限定符),而无需对编译代码进行任何更改。
如果生成带有文本的图像,请将这些字符串也放入 strings.xml 中,并在翻译后重新生成图像。
不会以任何方式向用户显示的字符串不需要存储在 XML 中,因为它们永远不需要翻译,并且您可能不希望 Android 系统以您可能不知道的方式篡改它们在运行时。
| 归档时间: |
|
| 查看次数: |
2673 次 |
| 最近记录: |