Objective c 比较两个日期以限制用户选择未来日期?
我被一个问题打动了,请看下面的问题并帮助解决 我有一个日期选择器,我在其中显示(日期、月、年),当用户选择上一个日期时,例如2011年11月5日,标签应得到更新并显示所选日期&如果用户选择当前日期之后的未来日期,则应显示选择“当前或以前日期”的警报 下面是我无法达到条件的代码Objective c 比较两个日期以限制用户选择未来日期?,objective-c,ios4,date,uidatepicker,Objective C,Ios4,Date,Uidatepicker,我被一个问题打动了,请看下面的问题并帮助解决 我有一个日期选择器,我在其中显示(日期、月、年),当用户选择上一个日期时,例如2011年11月5日,标签应得到更新并显示所选日期&如果用户选择当前日期之后的未来日期,则应显示选择“当前或以前日期”的警报 下面是我无法达到条件的代码 NSDate *post = [NSDate date]; NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; dateFormat.dateStyl
NSDate *post = [NSDate date];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
dateFormat.dateStyle = NSDateFormatterMediumStyle;
NSString *theDate = [dateFormat stringFromDate:post];
NSDate *dates = [datepick date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateStyle = NSDateFormatterMediumStyle;
NSString *datetime = [dateFormatter stringFromDate:dates];
if (datetime > theDate)
{
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Alert" message:@"Please select current date or past date" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
[alert release];
}
else if(datetime <= theDate)
{
date_array = [[NSMutableArray alloc]init];
date.text = datetime;
[date_array addObject:datetime];
}
[dateFormat release];
[dateFormatter release];
NSDate*post=[NSDate-date];
NSDateFormatter*dateFormat=[[NSDateFormatter alloc]init];
dateFormat.dateStyle=nsDateFormatTermeLiumStyle;
NSString*theDate=[dateFormat stringFromDate:post];
NSDate*日期=[日期选取日期];
NSDateFormatter*dateFormatter=[[NSDateFormatter alloc]init];
dateFormatter.dateStyle=nsDateFormatTermeLiumStyle;
NSString*datetime=[dateFormatter stringFromDate:dates];
如果(日期时间>日期)
{
UIAlertView*alert=[[UIAlertView alloc]initWithTitle:@“警报”消息:@“请选择当前日期或过去日期”委托:自取消按钮:@“确定”其他按钮:无];
[警报显示];
[警报发布];
}
否则如果(datetime您可以将NSDate
s与-[NSDate compare:]进行比较。请尝试以下操作:
if ([dates compare:post] == NSOrderedDescending) {
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Healthcare" message:@"Please select current date or past date" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
[alert release];
}
else {
...
}
您可以设置UIDatePicker
实例的minimumDate
和maximumDate
属性,用户将别无选择,只能在这些范围内选择日期:)