Ios 带有自定义日期的UIPickerView

Ios 带有自定义日期的UIPickerView,ios,xcode,nsmutablearray,nsdate,uipickerview,Ios,Xcode,Nsmutablearray,Nsdate,Uipickerview,我不能使用UIDatePicker。我只想在所有的评论告诉我使用UIDatePicker之前,在一开始就把它扔掉。我想有一个拾取轮,显示一年中的所有日子,直到今天,并显示为日期:1/1月1日,日期:2/1月2日,依此类推。以下是我目前掌握的信息,它可以检测一年中的哪一天是“数字”,并用截至今天的所有日期填充捡拾轮: NSCalendar *currentCalendar = [NSCalendar currentCalendar]; NSDate *today = [NSDate dat

我不能使用UIDatePicker。我只想在所有的评论告诉我使用UIDatePicker之前,在一开始就把它扔掉。我想有一个拾取轮,显示一年中的所有日子,直到今天,并显示为日期:1/1月1日,日期:2/1月2日,依此类推。以下是我目前掌握的信息,它可以检测一年中的哪一天是“数字”,并用截至今天的所有日期填充捡拾轮:

NSCalendar *currentCalendar = [NSCalendar currentCalendar];
    NSDate *today = [NSDate date];

    NSInteger dc = [currentCalendar  ordinalityOfUnit:NSDayCalendarUnit
                                               inUnit:NSYearCalendarUnit
                                              forDate:today];
    options = [[NSMutableArray alloc]init];

    for (int index = 1; index <= dc; index++)
    {
        NSString *pickerItemTitle = [NSString stringWithFormat: @"Day: %d", index];
        [options addObject: pickerItemTitle];
    }
NSCalendar*currentCalendar=[NSCalendar currentCalendar];
NSDate*今天=[NSDate日期];
NSInteger dc=[currentCalendar ordinalityOfUnit:NSDayCalendarUnit
inUnit:NSYearCalendarUnit
福特:今天];
options=[[NSMutableArray alloc]init];

for(int index=1;index解决了这个问题。在循环中添加了一些代码,以形成一个基于日期的日整数。现在,为uipickerview设置数组的ViewWillAspect方法如下所示:

- (void)viewWillAppear:(BOOL)animated
{

    NSCalendar *currentCalendar = [NSCalendar currentCalendar];
    NSDate *today = [NSDate date];

    NSInteger dc = [currentCalendar  ordinalityOfUnit:NSDayCalendarUnit
                                               inUnit:NSYearCalendarUnit
                                              forDate:today];
    options = [[NSMutableArray alloc]init];

    for (int index = 1; index <= dc; index++)
    {
        NSDateComponents *components = [[NSDateComponents alloc] init];
        [components setDay:index];
        NSCalendar *gregorian = [[NSCalendar alloc]
                                 initWithCalendarIdentifier:NSGregorianCalendar];
        NSDate *date = [gregorian dateFromComponents:components];
        NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
        [formatter setDateFormat:@"MMM dd"];
        NSString *articleDateString = [formatter stringFromDate:date];
        NSString *pickerItemTitle = [NSString stringWithFormat: @"Day: %d/%@", index, articleDateString];
        [options addObject: pickerItemTitle];
    }
    [super viewWillAppear:YES];  
}
-(void)视图将显示:(BOOL)动画
{
NSCalendar*currentCalendar=[NSCalendar currentCalendar];
NSDate*今天=[NSDate日期];
NSInteger dc=[currentCalendar ordinalityOfUnit:NSDayCalendarUnit
inUnit:NSYearCalendarUnit
福特:今天];
options=[[NSMutableArray alloc]init];
对于(int index=1;index