我正在製作一個應用程序,我想在其中實施國際化。 我創建替代資源,如Android中的國際化
RES /值-FR/strings.xml中 其中包含法語文本的所有字符串,包括標題
誰能告訴我下一步做什麼?
謝謝
我正在製作一個應用程序,我想在其中實施國際化。 我創建替代資源,如Android中的國際化
RES /值-FR/strings.xml中 其中包含法語文本的所有字符串,包括標題
誰能告訴我下一步做什麼?
謝謝
您應該始終在res/values/strings.xml
中有默認字符串,因爲Android會嘗試使用最具體的資源。例如,如果您有res/values-fr/strings.xml
和res/values-de/strings.xml
以及用戶手機設置爲英語,則您的應用程序將崩潰,因爲英語不適用於de
和fr
,因此不存在回退資源。
當您在其各自的子文件夾中指定了默認字符串和任何翻譯後,可以按其限定符使用字符串。例如R.string.some_string
。然後,Android將使用適用於用戶當前設備語言的最適合的翻譯。
所有這一切,更在此說明:Localizing with Resources
設備會自動根據系統負載languge區域。除非您想單獨更改應用中的區域設置,否則不需要額外的步驟。
以及如何更改應用的區域設置 – ekjyot
@ekiyot:您無需更改「應用的區域設置」。有時你需要檢測它('Locale.getDefault()'),就是這樣。請不要在您的應用中實現語言選擇,這是常見的反模式(用戶已經爲整個操作系統選擇了他/她的語言)。 –
@PawełDyda,這是一個非常糟糕的主意,因爲:我使用EN作爲操作系統級別,大部分應用程序都在EN中。如果從設置有一個語言選擇器,我希望看到其他語言的應用程序比我會選擇它,但我不希望整個操作系統,肯定 – 2013-11-02 10:40:36
有太多可以告訴。資源(文本,圖形,聲音等)的外部化是一回事,適當的日期,時間,數字格式是另一回事。更糟糕的是,這僅僅是個開始,但是這個話題太寬泛了,不能在一個問題上得到回答,除了它只是脫離主題(不涉及編程)。 –