【发布时间】:2012-03-06 14:55:02
【问题描述】:
有没有办法获取我的strings.xml 中的字符串数量或检查是否所有字符串都以所选语言提供?
【问题讨论】:
-
我猜你可以解析它,但是用例是什么?你为什么需要这个,你想解决什么问题?
-
我有一个支持多种语言的应用程序,如果当前翻译未完成百分比,我想请用户帮忙翻译。
标签: android xml string translation
有没有办法获取我的strings.xml 中的字符串数量或检查是否所有字符串都以所选语言提供?
【问题讨论】:
标签: android xml string translation
我认为公共 api 中没有什么东西。您可以尝试使用反射,因为从 strings.xml 生成了 R.string 类..
试试这个:
Field[] f = R.string.class.getDeclaredFields();
【讨论】:
我不认为你的方法是最好的。如果您要提供多种语言,那么将它们存储在 android 中的最佳方式可能是作为替代资源(参见 http://developer.android.com/guide/topics/resources/providing-resources.html 和 http://developer.android.com/guide/topics/resources/localization.html)。
如果您打算这样做,那么您应该拥有所需的一切翻译资源,因此不存在部分翻译内容的问题。
我认为您最好使用第 3 方众包翻译服务,并提示您的用户使用该服务以获取尚未准备好包含的任何语言。查看crowdin 以获取此类服务的示例。例如,我知道Friendcaster 使用此服务翻译成多种语言并且效果很好(例如https://crowdin.com/project/f-plus)。
【讨论】: