【问题标题】:Xamarin Forms Localization: language is auto-detected?Xamarin 表单本地化:自动检测语言?
【发布时间】:2017-04-22 17:18:56
【问题描述】:

我正在本地化我的 Xamarin Forms 应用程序。我按照 Xamarin 的指南,添加了一个中性语言资源文件(带有英文文本)和一个意大利语资源文件。我还没有实现指南谈到的语言检测,但是当我在我的 Android 手机(不是模拟器)上启动它时,加载了正确的字符串(意大利语表示意大利语,中性语言表示任何其他语言)。

我可以安全地假设 Xamarin 现在“以某种方式”管理系统语言检测吗?它是一些仅调试功能吗?我是否必须编写特定于平台的检测?

【问题讨论】:

    标签: xamarin.forms


    【解决方案1】:

    根据 Xamarin 的documentation

    Xamarin.Forms 代码可以利用 .NET 的资源来加载正确的语言翻译,但我们需要查询每个平台上的操作系统以确定用户选择了哪种语言。

    据此,我假设 Android 在这种情况下是一个例外,而对于 iOS 和其他平台,您将需要使用依赖服务。上面的链接有更多关于如何实现的细节。

    【讨论】:

    • 我也是这么想的。不幸的是,我对 iOS 测试的访问权限有限,我希望能够确认或证明 Android 现在是一个特例(也许在编写指南之后就变成了这种情况?)。
    • @Simone 我认为需要特定于平台的代码来确定用户是否更改了其默认语言,这是由 .NET API 报告的。不过,我可能错了。
    猜你喜欢
    • 1970-01-01
    • 2020-07-25
    • 2012-08-27
    • 1970-01-01
    • 1970-01-01
    • 2018-07-13
    • 2017-01-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多