在我正在构建的应用程序中,我使用多种语言。通过添加新文件夹(例如:values-fr)并在其中添加新的 strings.xml 文件,可以轻松地将不同的语言添加到应用程序中。但我有相当大的文本文件(完整的文章)需要添加。这些文章也是用不同的语言撰写的。将它们添加到我的应用程序的最佳方式是什么?
我会考虑使用res/raw-<qualifiers>
作为资产的替代品。这raw
文件夹可以以原始形式存储任意文件(您猜对了)。例如,用法语和英语编写的“Hello World”文章将存储在:
然后可以通过调用打开原始资源openRawResource(int id)在资源对象上,类似于它对其他资源(如可绘制对象、字符串等)的工作方式。框架生成的 id 将采用熟悉的格式R.raw.filename
(没有文件扩展名)。
使用这种方法的好处是您可以充分利用 Android 的本地化系统,这意味着作为开发人员您基本上不必担心任何这些问题。您还可以轻松添加更多限定符以进一步过滤设备特征(例如屏幕尺寸、密度、平台版本等)请参阅此处了解完整概述)。缺点是它对原始文件名/扩展名施加了一些限制,并且不支持正确的文件夹/文件层次结构。
“更好”的方法(即 /raw 与 /assets)可能取决于您的项目的要求。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)