4

我想在我的Android應用程序中爲佛蘭芒語提供支持,但根據ISO 639-1,此語言沒有單獨的代碼。那我該怎麼做呢?佛蘭德的語言代碼

+0

或許這能夠幫助你: http://stackoverflow.com/questions/20527164/setting-application-locale-to-pt-br-programmatically – cesards

回答

1

使用nl-BE(比利時使用的荷蘭語)爲我工作。

http://www.localeplanet.com/icu/nl-BE/index.html

+1

我很好奇,是什麼「r」是否代表你的語言標籤?肯定它應該是「nl-BE」? –

+0

資源限定符「nl-rBE」中的「r」表示「區域」。 –

1

如果語言沒有代碼,那麼你就沒有其他辦法來「劫持」其他語言的代碼或編寫自己的本地化引擎(或者使用現有的東西,而不是框架的東西)。至於劫持現有的代碼,只需選擇一個你的用戶在現實生活中不太可能面對的代碼並將其翻譯出來。

1

請記住,資源限定符可以結合語言和國家。雖然荷蘭語和佛蘭芒語都是ISO 639-1 nl,但您也可以附加區域限定符以進一步指定區域。

文檔provides an example for British English

此外,您可能不需要創建每個字符串替代文本。例如,假設如下:

  • 您的應用程序的默認語言是美式英語。應用程序使用的每個字符串都使用美國英語拼寫在res/values/strings.xml中定義。
  • 對於一些重要的短語,您想提供英式英語拼寫。當您的應用程序在英國的設備上運行時,您希望使用這些替代字符串。

要做到這一點,你可以創建一個名爲res/values-en-rGB/strings.xml小文件,其中包括只有當應用程序在英國運行

同樣應該是不同的字符串,你可以爲佛蘭德通過指定提供這種資源目錄values-nl-rBE