我正在尝试本地化UIDatePicker。 Apple的文档说它应该自动检测当前的语言环境,但无论我选择何种语言,语言都保持不变。我该怎么办?
答案 0 :(得分:11)
locale属性(以及所有其他特定于国家/地区的格式属性)默认为currentLocale返回的值,而后者依赖于iphone的国家/地区设置,而不是语言设置。您需要在iphone常规设置中设置适当的国家/地区。
答案 1 :(得分:5)
UIDatePicker中的NSLocale从iOS 6开始回复。默认情况下,iOS 6中的手机设置被忽略并使用en_US语言环境,因此您必须在代码中设置语言环境
答案 2 :(得分:2)
根据我的经验,在 iOS5 中,UIDatePicker似乎忽略了设置区域设置并使用了常规设置提供的区域设置。但它应该可以在 iOS6 中正常工作。
答案 3 :(得分:0)
UIDatePicker具有locale属性;如果你没有设置它,它应默认为用户首选的语言环境。当您说“无论选择何种语言”时,您的意思是 - 您是尝试以编程方式更改语言环境,还是使用“设置”页面更改设备的默认语言环境?
答案 4 :(得分:0)
要显示在设备中设置了当前语言的选择器,请使用以下方法:
@property (weak, nonatomic) IBOutlet UIDatePicker *pickerView;
[_pickerView setLocale:[[NSLocale alloc] initWithLocaleIdentifier:[[NSLocale currentLocale] localeIdentifier]]];