本地化DatePicker

时间:2018-03-12 18:25:46

标签: xamarin xamarin.forms xamarin.android

我需要本地化DatePicker。从我读到的对话框使用系统区域设置而不是当前线程区域设置。有解决方法吗?

截至目前,我的应用程序支持用户可以选择的三种语言(.NETStandard项目中的ResourceManagers)。如果设备使用不同的语言,整个应用程序将使用英语,但DatePicker除外,它将采用系统语言。

以下两种方法都是可接受的解决方案:

  • 用户可以选择在申请的整个生命周期中使用哪种语言
  • 如果支持,则应用程序使用系统语言,否则使用英语

修改

Raimo建议的自定义渲染器实现

public class LocaleAwareDatePickerRenderer : DatePickerRenderer{
  public LocaleAwareDatePickerRenderer( Context context ) : base(context) { }
  protected override EditText CreateNativeControl() {
    return new EditText(Context) {TextLocale = new Locale("cs"), Focusable = false, Clickable = true, Tag = this};
  }
}

1 个答案:

答案 0 :(得分:0)

使用自定义DatePickerRenderer并添加这两行来设置控件的区域设置:

html_<^