我问自己几个问题,我想知道是否有最佳实践。
strings.xml
文件中订购字符串?按字母顺序排列?按活动分组? ...?答案 0 :(得分:8)
我还是新手,所以我一直在寻找一个示例项目。 Astrid在Github上是开源的,查看项目res目录对于像我这样的新手而言是开放的。
好东西。看看:
https://github.com/todoroo/astrid/tree/master/astrid/res/values
答案 1 :(得分:4)
好问题。我也在努力解决这个问题。我的命名方案是:
1)UI元素: 如果一个字符串仅对应于一个ui,我将其命名为控制元素和目的,以及它所使用的控制元素的哪个部分。例如:
button_helpText;
control : button, purpose: help, context: Text;
2)一般要素: 如果在UI上使用字符串,但我想在另一个上下文中使用它,我只需保留前缀并添加后缀来描述目的/上下文精确。
helpMessageHeading;
purpose: help; context: a Message (abstract, could be a dialog), context_of_dialog: Heading; (the heading of a help dialog)
helpMessageText;
purpose: help, context: a Message (abstract, could be a dialog), context_of_dialog: Text; (the text inside a help dialog)
helpExplanation;
purpose: help; context_of_help: Explanation (just a explanation of the help topic)
3)订购: 我主要根据他们的上下文来命令这些字符串,因为这是你通常搜索的内容。
<!-- buttons -->
...
<!-- dialogs -->
...
<!-- general -->
...
<!-- explanations -->
...
等等。所以我的列表通常在UI控件中分离,如果字符串没有绑定到它,则它的一般精确上下文。为什么我要使用精确的上下文?当你搜索一个字符串来描述你所做的事情时,关于这个字符串最独特的想法就是它的精确上下文,这就是应该首先弹出的内容。但是当您使用自动完成时,通常会搜索一般说明。我认为这种结构是一个很好的解决方案。
我对其他答案非常感兴趣。
答案 2 :(得分:3)
检查约定的最佳位置很可能是在Android SDK示例中。以下是您可以找到它们的方法 - http://developer.android.com/tools/samples/index.html
答案 3 :(得分:2)
答案 4 :(得分:1)
如何保持翻译同步?是否有协作的在线工具 你可以推荐吗?
目前我正在使用这个协作工具http://www.getlocalization.com/,如果不使用专业功能,这将使生活变得更加轻松和免费。
然后还有http://crowdin.net/这在我看来有点好,因为谷歌和bing提出翻译但是最便宜的版本需要花费9美元。
如何在strings.xml文件中订购字符串?按字母顺序排列?分组 按活动? ...?
到目前为止,我没有订购它们,因为我主要不会手动编辑我的xml。 有一个插件可以很容易地在eclipse中处理多个翻译:Sequoyah本地化编辑器
答案 5 :(得分:-1)
如何保持翻译同步?是否有可以推荐的协作在线工具?
我使用项目管理工具https://poeditor.com来翻译XML文件并使它们保持同步。