我自问了几个问题,想知道有没有最佳实践。
- 如何命名字符串?这对我来说总是很混乱。
- 如何保持翻译同步?你能推荐一些协作在线工具吗?
- 如何在
strings.xml
文件中排序字符串?按字母顺序?按活动分组?...? - 重复使用字符串怎么办?你会建议使用多个略微不同的字符串还是一个能适应多种情境的字符串?
我自问了几个问题,想知道有没有最佳实践。
strings.xml
文件中排序字符串?按字母顺序?按活动分组?...?我还是个新手,所以在寻找一个示例项目。Astrid 在 Github 上是开源的,浏览该项目的资源目录对像我这样的新手来说是很有启发性的。
不错的东西。看一下:
https://github.com/todoroo/astrid/tree/master/astrid/res/values
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控件和如果字符串没有绑定到它,则是它的一般精确上下文。为什么我使用精确上下文?当您搜索字符串以描述您所做的内容时,该字符串的最独特想法是其精确上下文,因此应该首先弹出。但是当您使用自动完成时,通常会搜索一般描述。我认为这种结构是一个很好的解决方案。
我对其他答案非常感兴趣。
查看会议的最佳地点可能在Android SDK示例中。以下是您可以找到它们的方法 - http://developer.android.com/tools/samples/index.html