2017-04-22 20 views
1

我正在本地化我的Xamarin Forms應用程序。我遵循Xamarin的指南,並添加了一箇中性語言資源文件(帶有英文文本)和一個意大利文文件。我沒有實現指南所談論的語言檢測,但是當我在我的Android手機(不是模擬器)上啓動它時,正確的字符串被加載(意大利語意大利語,任何其他語言的中性語言)。Xamarin Forms本地化:語言被自動檢測到?

我可以安全地假設Xamarin「以某種方式」現在管理系統語言檢測嗎?它是一些僅用於調試的功能嗎?我是否必須編寫特定於平臺的檢測?

回答

0

根據Xamarin的documentation

Xamarin.Forms代碼可以利用.NET資源的加載正確的語言翻譯,但我們需要查詢操作系統每個平臺上,以確定哪些語言的用戶已選擇。

從這我會假設在這種情況下Android是一個例外,對於iOS和其他平臺,您將需要使用依賴項服務。上面的鏈接有更多關於如何實現的細節。

+0

這就是我所想的。不幸的是,我對iOS測試的訪問是有限的,我希望我能夠得到一個確認或者證明Android現在是一個特例(可能在編寫完指南之後就這樣了)。 – Simone

+1

@Simone我認爲需要使用特定於平臺的代碼來確定用戶是否更改了其由.NET API報告的默認語言。不過,我可能是錯的。 – P0W