需要在iPhone中仅显示带有日期UIDatePicker的工作日

时间:2009-07-03 14:30:44

标签: ios iphone nsdateformatter uidatepicker

有没有办法只在星期显示日期为:MON 03-JUL在iPhone中的UIDatePicker

请帮忙。

1 个答案:

答案 0 :(得分:5)

不,据我所知,无法在UIDatePicker中设置自定义日期格式。无论如何,在日期选择器中仅显示工作日是没有意义的,因为每个工作日最终会有多个条目:

  • 周五(第3名)
  • 星期六(第四次)
  • Sun(5th)
  • ...
  • 周五(10日)
  • 星期六(11日)
  • ...

如果您只希望用户选择工作日(周一至周日),则只需使用UIPickerView即可。并确保您不对工作日名称进行硬编码,而是在- (NSArray *)weekdaySymbols上使用NSDateFormatter。这将考虑用户的语言环境,并返回一个工作日名称数组作为字符串:

NSDateFormatter* dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
NSArray* weekdays = [dateFormatter weekdaySymbols];
// will return Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday (en_US locale)

或者,您可以使用shortWeekdaySymbols

NSDateFormatter* dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
NSArray* weekdays = [dateFormatter shortWeekdaySymbols];
// will return Sun,Mon,Tue,Wed,Thu,Fri,Sat (en_US locale)