objective-c - 列出前六个月

标签 objective-c cocoa nsdatecomponents date-formatting

我正在寻找一种方法来获取从今天起过去六个月的列表。

今天是五月,所以我会寻找以下输出:

May 2013,
Apr 2013,
Mar 2013,
Feb 2013,
Jan 2013,
Dec 2012

我知道这与 NSDateComponents 有关。 ,但我找不到这方面的任何帮助。

最佳答案

试试这个,您可以根据您的选择更改int i的值

NSDate *today = [[NSDate alloc] init];
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *offsetComponents = [[NSDateComponents alloc] init];

for (int i = 0; i <=6 ;i++) {
    [offsetComponents setMonth:-i];

    NSDate *dateStr = [gregorian dateByAddingComponents:offsetComponents toDate:today options:0];
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:@"MMMM YYYY"];
    NSString *stringFromDate = [formatter stringFromDate:dateStr];
    NSLog(@"%@", stringFromDate);
}

关于objective-c - 列出前六个月,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16586564/

相关文章:

ios - <NSMutableURLRequest : 0x1c0c7ae0> { URL: (null) } in Objective C

ios - 在 PFQueryTableViewController 中过滤查询结果

iphone - NSDateCompononents 中可能存在错误吗?

objective-c - 存储 4 个属性(NSPoints)位置的最有效方法是什么?

macos - 声明 MacOS 应用程序的 Metal 支持要求

ios - 为什么我从 "2010-01-01 00:00:00 +900"得到 "2010-12-31 15:00:00 +000"?

objective-c - 从引用 NSDate 获取下一周的 NSDate?

ios - 使用 REST API 对 Parse.com 进行复合查询

iphone - 将 uidatepicker 格式化为另一个 nsdate

objective-c - 如何在 Mac 命令行应用程序中获取自定义 url?