Ios 如何验证此UI的日期格式?

Ios 如何验证此UI的日期格式?,ios,objective-c,Ios,Objective C,这里有一个弹出窗口,其中有一些数字。前8位为YYYYMMDD格式。我必须验证,如果输入的日期是过去(更早)的日期,则文本字段下方的弹出窗口中应显示一条消息,称为“过去的日期”。如果日期是当前日期或未来日期,则应移动到下一个viewController。日期格式化程序应为yyyyMMdd。资本化确实很重要。特别是在日组件中。有关详细信息,请参阅不要强制用户以特定格式输入日期字符串。具有单独的文本字段,或使用选择器视图。 NSString *strTextField = @"20151012122"

这里有一个弹出窗口,其中有一些数字。前8位为YYYYMMDD格式。我必须验证,如果输入的日期是过去(更早)的日期,则文本字段下方的弹出窗口中应显示一条消息,称为“过去的日期”。如果日期是当前日期或未来日期,则应移动到下一个viewController。

日期格式化程序应为
yyyyMMdd
。资本化确实很重要。特别是在
组件中。有关详细信息,请参阅不要强制用户以特定格式输入日期字符串。具有单独的文本字段,或使用选择器视图。
NSString *strTextField = @"20151012122";
NSString *strDate = [strTextField substringToIndex:8];

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyyMMdd"];
NSDate *pDate = [dateFormat dateFromString:strDate];

NSDate *pCurrentDate = [NSDate date];

if ([pDate compare:pCurrentDate] == NSOrderedDescending) {
    NSLog(@"past date, pDate is less than current date.");
}
else {
    NSLog(@"should move to the next viewController");
}