簡體   English   中英

參考當前日期獲取一周內的日期數組

[英]Get an array of dates in a week with reference of current date

有沒有辦法參考當前日期在一周內獲取一組日期?

你能通過這個代碼請go,

NSDate *startDate = ...;
NSDate *endDate = ...;
unsigned int unitFlags = NSMonthCalendarUnit | NSDayCalendarUnit;
NSDateComponents *comps = [gregorian components:unitFlags fromDate:startDate  toDate:endDate  options:0];
int months = [comps month];
int days = [comps day];

這是來自 Apple 的一個簡單示例。 更多細節

試試這對我來說很好用。 -(NSMutableArray *)getWeekDays{

    NSDate *today = [NSDate date];

    NSCalendar *gregorian = [[NSCalendar alloc]

                             initWithCalendarIdentifier:NSGregorianCalendar];

    NSDateComponents *weekdayComponents =

    [gregorian components:(NSDayCalendarUnit | NSWeekdayCalendarUnit) fromDate:today];

    NSInteger day = [weekdayComponents day];

    NSInteger weekday = [weekdayComponents weekday];

    int i=(int)weekday;
    int start,end;
    if(i==7)
    {
        start=6;
        end=0;
    }
    else if(i==6)
    {

        start=5;
        end=1;
    }

    else if(i==5)
    {

        start=4;
        end=2;
    }

    else if(i==4)
    {

        start=3;
        end=3;
    }
    else if(i==3)
    {

        start=2;
        end=4;
    }


    else if(i==2)
    {

        start=1;
        end=5;
    }

    else if(i==1)
    {

        start=0;
        end=6;
    }


    NSDate *cdate=[NSDate date];
    NSDateFormatter *df=[[NSDateFormatter alloc] init];
    [df setDateFormat:@"dd/MM/yyyy EEEE"];
    NSMutableArray *WeekDatesArr=[[NSMutableArray alloc] init];

    for(start;start>0;start--)
    {
        NSDate *FirstDate=[cdate addTimeInterval:-(86400)*start];
        NSString *str=[df stringFromDate:FirstDate];
        [WeekDatesArr addObject:str];
    }
    for(int i=0;i<=end;i++)
    {
        NSDate *LastDate=[cdate addTimeInterval:(86400)*i];
        NSString *str1=[df stringFromDate:LastDate];
        NSLog(@"Str %@ ",str1);
        [WeekDatesArr addObject:str1];
    }
    NSLog(@"Dates Description in week %@",WeekDatesArr);  
    return WeekDatesArr;
}

干杯

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM