我在問自己幾個問題,我想知道是否有任何最佳實踐。Android strings.xml最佳實踐?
- 如何命名的字符串?它總是以混亂的方式結束我。
- 如何保持翻譯同步?您可以推薦哪些協作式在線工具?
- 如何才能在
strings.xml
文件中的字符串?按字母順序排列?按活動分組? ...? - 如何重複使用字符串?你會推薦使用多個略有不同的字符串或一個字符串,以適應多種情況?
我在問自己幾個問題,我想知道是否有任何最佳實踐。Android strings.xml最佳實踐?
strings.xml
文件中的字符串?按字母順序排列?按活動分組? ...?有趣的問題。我也爲此苦苦掙扎。我的命名方案是:
1)UI元素: 如果一個字符串只對應於一個UI,我相應地將其命名爲控件元素和用途,以及它使用的控件元素的哪一部分。例如:
button_helpText;
control : button, purpose: help, context: Text;
2)一般元素: 如果字符串使用的用戶界面,但我想用它在其他方面,我剛剛離開的前綴,並添加一個後綴來形容目的/背景鐵道部精確。
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控件中分離,如果一個字符串沒有綁定到它,它的一般精確上下文。爲什麼我使用確切的上下文?當你搜索一個字符串來描述你做什麼時,關於這個字符串的最獨特的想法是它的確切上下文,所以這就是應該首先彈出的東西。但是,當您使用自動完成功能時,您通常會搜索一般說明。我認爲這個結構是一個很好的解決方案。
我即時在其他的答案很感興趣。
如何保持翻譯同步?您可以推薦協作在線工具 嗎?
目前我正在使用這個協作工具http://www.getlocalization.com/,這使得生活更容易和免費,如果沒有專業功能。
然後還有http://crowdin.net/這在我看來有點好一些,因爲google和bing提供了翻譯,但是在最便宜的版本中花費了9美元。
如何才能在的strings.xml文件中的字符串?按字母順序排列?按活動分組了 ? ...?
到目前爲止,我沒有訂購它們,因爲我大多不用手工編輯我的xml。 有一個插件,它使得在處理多日食翻譯很容易:塞闊亞本地化編輯
我仍然在這個新的,所以我一直在尋找的示例項目。 Astrid是Github上的開源代碼,通過項目res目錄查看像我這樣的新手眼睛開放。
好東西。請看:
https://github.com/todoroo/astrid/tree/master/astrid/res/values
檢查約定的最佳位置很可能在Android SDK示例中。以下是如何找到它們 - http://developer.android.com/tools/samples/index.html
如何保持翻譯同步?您可以推薦哪些協作式在線工具?
我使用項目管理工具https://poeditor.com來翻譯XML文件並保持同步。
對於一個問題,這是很多問題。根據[faq],這裏的一些(大多數)是主觀的/將導致討論=>關閉這個主題。 – Mat