如上页所示,我在标签上有一个日期(默认为当前日期)。采用MM dd。
的格式我有两个按钮可以在第二天更改日期&前一天。
我应该如何使用这些按钮实现更改日期?
任何教程/建议(我认为这里没有涉及datepicker)
答案 0 :(得分:1)
使用这两个功能获取上一个日期和下一个日期,然后使用返回的日期,并仅使用月份和年份显示在您的标签上。
+ (NSDate *) getDate:(NSDate *)fromDate daysAgo:(NSUInteger)days
{
NSDateComponents *dateComponents = [[NSDateComponents alloc] init];
dateComponents.day = -1*days;
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDate *previousDate = [calendar dateByAddingComponents:dateComponents
toDate:fromDate
options:0];
[dateComponents release];
return previousDate;
}
+ (NSDate *) getDate:(NSDate *)fromDate daysAhead:(NSUInteger)days
{
NSDateComponents *dateComponents = [[NSDateComponents alloc] init];
dateComponents.day = days;
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDate *previousDate = [calendar dateByAddingComponents:dateComponents
toDate:fromDate
options:0];
[dateComponents release];
return previousDate;
}
答案 1 :(得分:-1)
尝试这些方法
- (NSDate *) dateByAddingDays: (int) dDays : (NSDate*)presntdate
{
NSTimeInterval aTimeInterval = [presntdate timeIntervalSinceReferenceDate] + 86400 * dDays;
NSDate *newDate = [NSDate dateWithTimeIntervalSinceReferenceDate:aTimeInterval];
return newDate;
}
- (NSDate *) dateBySubtractingDays: (int) dDays : (NSDate*)presntdate
{
return [self dateByAddingDays: dDays*-1 :presntdate];
}