【发布时间】:2016-02-23 12:13:43
【问题描述】:
在 RTL 上显示 DatePicker - 时间模式时,我遇到了一个奇怪的问题。
我以编程方式显示日期选择器。 分钟应该在右边,小时应该在左边,在下图中你可以看到它被翻转了:
它发生在 iOS 9 及更高版本上。
我正在使用的代码:
UIDatePicker *datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, self.view.bounds.size.height+44, self.view.frame.size.width, 216)];
datePicker.tag = tag;
[datePicker setSemanticContentAttribute:UISemanticContentAttributeForceLeftToRight];
[datePicker setDatePickerMode:UIDatePickerModeTime];
[datePicker setBackgroundColor:[UIColor whiteColor]];
[datePicker addTarget:self action:@selector(changeDate:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:datePicker];
有什么建议吗?
【问题讨论】:
-
添加您的选择器方法。
-
- (void)changeDate:(UIDatePicker *)sender { NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"HH:mm"]; [dateFormatter setLocale:[NSLocale systemLocale]]; [dateFormatter setTimeZone:[NSTimeZone systemTimeZone]]; NSString *capturedStartDate = [dateFormatter stringFromDate:sender.date]; if (sender.tag == startDayDP) { [_startDayHour setText:capturedStartDate]; } else { [_endDayHour setText:capturedStartDate]; } [自我重载通知]; }
标签: ios ios9 rtf uidatepicker picker