Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了java – 在Android中,是否有理由将字符串资源用于不会被翻译的字符串?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我想知道在Android代码中使用java文件中定义的字符串有什么缺点.

我喜欢使用普通的旧Java字符串来处理不可见的字符串,例如我正在解析的XML文档中的名称,或者bundle的键.将所有这内容保存在使用它们的java文件中而不是将它们移动到XML文件中并使代码更复杂似乎是个好主意.

然而,我看到许多Android代码示例似乎将每个字符串放入资源文件中.

在java文件中使用字符串有什么问题?人们不这样做的原因是什么?我一直在我的应用程序中这样做,到目前为止还没有看到任何问题.

请注意,我知道XML文件对于需要翻译的内容非常有意义.这个问题适用于字符串保持不变的情况.

我试着让这个问题更清楚:

有什么理由除外:

>因为它是标准/最佳实践等 – 我的问题基本上是:为什么它是最佳实践,仅仅因为i8n,还是有其他原因?
>因为它允许您使用资源框架进行翻译,依赖于设备的字符串等.
>因为它允许您使用非ASCII字符.

最佳答案
您的问题的简单答案是将所有字符串放入资源的标准.还有很多原因,如果你将字符串保存在xml / java文件中,则必须更新这些文件中的每个引用以获得单个字符串.

例如.如果你想在5个不同的文件使用“Ok”改为“确认”,你必须在所有这5个文件中进行更改,但对于String资源,你只需要更新一个String.xml文件.

编辑

请在下面找到我们应该使用String.xml的一些原因

1)更新对多次出现的单个引用.根据@treesAreEverywhere它可以使用公共静态字符串完成,但它将在应用程序启动时占用内存,直到应用程序关闭.但是在String.xml中编写的String将在使用时加载.

2)多语言支持.您可以创建多语言资源文件夹以支持您的多语言应用程序,因此使用Locale更改的语言将由OS在运行时根据语言资源文件夹动态维护.

3)请查看Localization文档,其中提供了有关使用String.xml的更多信息

4)字符串不会使应用程序代码混乱,使其清晰易用.

这是一种像其他任何语言一样的编码标准.但是如果需要,可以忽略它,并且可以在代码中使用公共静态字符串变量创建代码.使用String.xml不是必须的,但它是一个很好的编码实践来使用它.良好的做法,例如用括号括起单个语句来关闭if块而不是保持原样.

if(condition){statement;而不是if(condition)语句;

大佬总结

以上是大佬教程为你收集整理的java – 在Android中,是否有理由将字符串资源用于不会被翻译的字符串?全部内容,希望文章能够帮你解决java – 在Android中,是否有理由将字符串资源用于不会被翻译的字符串?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。