将默认语言环境设置为DatePicker和TimePicker

问题描述 投票:3回答:2

我在自定义DatePicker中使用TimePickerDialog。功能正常,但是当我更改应用程序的默认Locale以匹配阿拉伯语时,我遇到了问题。

问题是DatePickerTimePicker没有在所有Android版本上本地化。它适用于Android 4.2.2及更高版本。但它不适用于Android 4.1.2及更低版本。

我想要将DatePickerTimePicker的本地化一直改为英语,或者在Locale与阿拉伯语匹配时将其更改为阿拉伯语。

这是Android 4.2.2及更高版本中的对话框(与本地化匹配的正确对话框)

这是Android 4.1.2及更低版本中的对话框

android localization arabic android-datepicker android-timepicker
2个回答
2
投票

您需要创建自定义DatePicker或TimePicker。看到这个链接https://stackoverflow.com/a/9220899/3864698。它可以帮助您解决问题。

或者您可以使用Reflection编辑NumberPicker值,按照this link获取完整的解决方案。


0
投票

在显示DatePicker / TimePicker之前,请更改片段/活动中的区域设置。

Locale locale = Locale.US; //您的特定区域设置。 Locale.setDefault(区域);

    Configuration configuration = context.getResources().getConfiguration();
    configuration.setLocale(locale);
    configuration.setLayoutDirection(locale);

    context.createConfigurationContext(configuration);
© www.soinside.com 2019 - 2024. All rights reserved.