2011-09-07 22 views
29

Zadaję sobie kilka pytań i zastanawiam się, czy są jakieś najlepsze praktyki.Android strings.xml Najlepsze praktyki?

  1. Jak nazwać napis? To zawsze kończy się dla mnie chaosem.
  2. Jak utrzymać synchronizację tłumaczeń? Czy możesz korzystać z narzędzi do współpracy online?
  3. Jak zamówić ciąg w pliku strings.xml? Alfabetyczny? Pogrupowane według aktywności? ...?
  4. Co powiesz na ponowne użycie ciągów? Czy poleciłbyś użycie kilku nieco innego ciągu lub jednego ciągu, który w jakiś sposób pasuje do wielu kontekstów?
+0

To wiele pytań do pytania. A niektóre (większość) z tego są subiektywne/doprowadzą do dyskusji => wyłączenia tematu zgodnie z [faq]. – Mat

Odpowiedz

4

Ładne pytanie. Ja też się z tym zmagam. Mój schemat nazewnictwa to:

1) Elementy interfejsu użytkownika: Jeśli ciąg znaków odpowiada tylko elementowi interfejsu użytkownika, należy go odpowiednio wpisać w element sterujący i cel, a także w której części elementu kontrolnego jest on używany. Przykład:

button_helpText; 
control : button, purpose: help, context: Text; 

2) elementy ogólne: Jeżeli łańcuch jest używany w interfejsie użytkownika, ale chcę go używać w innym kontekście i po prostu zostawić prefiks i dodać postfix opisać cel/kontekst mor precyzyjne.

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) Zamawianie: zamówić te ciąg opartą głównie na ich kontekście, jak to jest to, czego normalnie szukać.

<!-- buttons --> 
... 
<!-- dialogs --> 
... 
<!-- general --> 
... 
<!-- explanations --> 
... 

i tak dalej. Tak więc moja lista jest zwykle oddzielona w kontrolkach interfejsu użytkownika, a jeśli ciąg nie jest z nią związany, jego ogólny dokładny kontekst. Dlaczego używam dokładnego kontekstu? kiedy szukasz łańcucha, aby opisać, co robisz, najbardziej unikalnym pomysłem na ten ciąg jest jego dokładny kontekst, więc to, co powinno pojawić się jako pierwsze. Ale kiedy używasz automatycznego uzupełniania, zwykle szukasz ogólnego opisu. Myślę, że ta struktura jest dobrym rozwiązaniem.

Jestem bardzo zainteresowany innymi odpowiedziami.

1

Jak utrzymać synchronizację tłumaczeń? Czy są dostępne narzędzia do współpracy online , które możesz polecić?

W tej chwili używam tego narzędzia współpracy http://www.getlocalization.com/, dzięki czemu życie jest o wiele łatwiejsze i bezpłatne, jeśli nie używa żadnych funkcji pro.

Następnie jest jeszcze http://crowdin.net/, który jest nieco lepszy w mojej opinii, ponieważ sugeruje tłumaczenia przez Google i Bing, ale kosztuje 9 $ w najtańszym wariancie.

Jak zamówić ciąg w pliku strings.xml? Alfabetyczny? Zgrupowane według aktywności? ...?

Do tej pory nie zamawiałem ich, ponieważ najczęściej nie edytuję mojego xml ręcznie. Istnieje wtyczka, która sprawia, że ​​obsługa wielu tłumaczeń w środowisku Eclipse jest bardzo łatwa: Edytor lokalizacji Sequoyah

2

Jak zachować tłumaczenia w synchronizacji? Czy możesz korzystać z narzędzi do współpracy online?

Dla mnie najlepszym narzędziem jest http://www.translatekarate.com

To jest wolny i współpracy.

-1

Jak utrzymać synchronizację tłumaczeń? Czy możesz korzystać z narzędzi do współpracy online?

Używam narzędzia do zarządzania projektami https://poeditor.com do tłumaczenia plików XML i synchronizowania ich.