我知道如何将 UIDatePicker 中的最大和最小日期设置为某个日期,我想知道是否有可能做到这一点,因此最小日期始终是“今天”日期。在我的应用程序中,用户输入过去的日期是没有意义的,只是让他们添加今天或将来的日期。
问问题
8396 次
1 回答
24
将最小日期设置为现在,将显示日期设置为现在 + 2 秒:
myDatePicker.date =
[[ NSDate alloc ] initWithTimeIntervalSinceNow: (NSTimeInterval) 2 ];
myDatePicker.minimumDate =
[[ NSDate alloc ] initWithTimeIntervalSinceNow: (NSTimeInterval) 0 ];
当您初始化 Nib 或将视图控制器的数据设置为重用时,请执行此操作。您也可以在 viewWillAppear 中执行此操作。
加分:您可以添加一个 IBAction 方法,巧妙地鼓励用户不要选择不明智的日期:
- (IBAction)datePickerChanged: (id)sender
{
if ( [ datePicker.date timeIntervalSinceNow ] < 0 )
datePicker.date = now;
}
于 2012-06-13T23:44:34.070 回答