【问题标题】:How to set app to default to language based on region it was first activated如何根据首次激活的地区将应用程序设置为默认语言
【发布时间】:2021-01-27 23:46:17
【问题描述】:

我想根据首次激活的地区将应用设置为默认语言

【问题讨论】:

  • 您在文档中搜索过吗? CultureInfo.CurrentUICulture。 (你的问题不太清楚)。
  • 我需要了解不同地区的语言
  • 不是用户当前在手机操作系统(Android 或 iOS)中选择的语言?
  • 不,我想根据首次激活的地区设置应用默认语言

标签: c# xamarin xamarin.android


【解决方案1】:

Localization 在 iOS 中:

在技术问答 QA1828:iOS 如何确定您的应用程序的语言, Apple 描述了 iOS 如何选择在应用程序中使用的语言。这 以下因素会影响显示的语言:

  • 用户的首选语言(可在Settings 应用中找到)
  • 与应用捆绑在一起的localizations(.lproj 文件夹)
  • CFBundleDevelopmentRegion(Info.plist 值指定默认值 应用程序的语言)
  • CFBundleLocalizations(Info.plist 数组指定所有支持 本地化)

如技术问答中所述,CFBundleDevelopmentRegion 代表应用的默认区域和语言。如果应用没有明确支持任何用户的首选语言,它将使用此字段指定的语言。

Localization 在 Android 中:

用户在Settings > Language & input 中选择他们的语言。此选择控制显示的语言和使用的区域设置(例如日期和数字格式)。

当前语言环境可以通过当前上下文的资源查询:

var lang = Resources.Configuration.Locale; // eg. "es_ES"

在 iOS 和 Android 中,您应该在项目中添加不同语言的 localized stringsimagesother resources。那么当你的应用启动时,如果你的项目中有的话,应用会选择对应的语言,否则它会使用默认语言。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多