可能重复:
Add AM/PM to datepicker?
我有UIDatePicker。如果我选择俄罗斯地区我有24小时,如果我选择美国我有12小时上午/下午。 怎么做我可以选择任何地区并有24小时?
datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 45, 325, 250)];
datePicker.datePickerMode = UIDatePickerModeTime;
datePicker.hidden = YES;
[datePicker addTarget:self action:@selector(changeDateInLabel:) forControlEvents:UIControlEventValueChanged];
- (void)changeDateInLabel:(id)sender{
NSDateFormatter* dateFormatter = [[[NSDateFormatter alloc] init]autorelease];
[dateFormatter setDateStyle:NSDateFormatterNoStyle];
[dateFormatter setTimeStyle:NSDateFormatterShortStyle];
datelabel.text=[dateFormatter stringFromDate:[datePicker date]];
}
答案 0 :(得分:1)
因为语言环境(俄罗斯)默认为24小时。它是SDK的限制/问题。
最容易修复:
NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
[datePicker setLocale:locale];
[locale release];