0

嗨,我正在编写一个有竞争的应用程序。

UIAlertView *alert = [[UIAlertView alloc]

                      initWithTitle:@"Icon Contest!"
                      message:@"Design a 1024 x 1024 pixels icon for Example. The best one will be on the app's icon! Send them to: example@example.com."
                      delegate:self
                      cancelButtonTitle:@"More Info"
                      otherButtonTitles:@"Yes",@"No", nil];

[alert show];

我有一个截止日期,并希望应用程序在 1 月 31 日结束时显示不同的警报。

4

3 回答 3

4

[NSDate date]返回当前日期。
使用NSDateComponent可以从 NSDate 中获取月份和日期等详细信息。

于 2012-12-11T20:02:18.073 回答
2

正如 yinkou 指出的那样,您可以使用它[NSDate date]来获取当前日期。但是为此,如果您查看-timeIntervalSinceNow上的方法可能会更简单NSDate。你可以这样做:

NSDateComponents *comps = [[NSDateComponents alloc] init];
[comps setDay:31];
[comps setMonth:1];
[comps setYear:2013];
NSDate *date = [[NSCalendar currentCalendar] dateFromComponents:comps];
if ([date timeIntervalSinceNow] < 0.0) {
    //The date has passed
}
else {
    //The date hasn't passed
}
于 2012-12-11T20:14:48.737 回答
1
NSDateComponents *components = [[NSDateComponents alloc] init];
[components setDay:31];
[components setMonth:1];
[components setYear:2013];

NSCalendar *gregorian = [[NSCalendar alloc]
                             initWithCalendarIdentifier:NSGregorianCalendar];

NSDate *releaseDate = [gregorian dateFromComponents:components];

if ([NSDate date] == releaseDate)
{
[alert show];
}
于 2012-12-11T20:08:02.243 回答