蓝牙项目所需 每次切换需要更新一个星期的日期
#pragma mark - 日期计算-循环一星期
-(void)dateCalculationWith:(NSDate * )now
{
// NSDate *now = [NSDate date];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *comp = [calendar components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit|NSWeekdayCalendarUnit|NSDayCalendarUnit
fromDate:now];
// 得到星期几
// 1(星期天) 2(星期二) 3(星期三) 4(星期四) 5(星期五) 6(星期六) 7(星期天)
NSInteger weekDay = [comp weekday];
// 得到几号
NSInteger day = [comp day];
NSLog(@"weekDay:%ld day:%ld",weekDay,day);
// 计算当前日期和这周的星期一和星期天差的天数
long firstDiff,lastDiff;
if (weekDay == 1) {
firstDiff = 1;
lastDiff = 0;
}else{
firstDiff = [calendar firstWeekday] - weekDay + 1;
lastDiff = 9 - weekDay - 1;
}
NSLog(@"firstDiff:%ld lastDiff:%ld",firstDiff,lastDiff);
// 在当前日期(去掉了时分秒)基础上加上差的天数
NSDateComponents *firstDayComp = [calendar components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit fromDate:now];
[firstDayComp setDay:day + firstDiff ];
NSDate *firstDayOfWeek= [calendar dateFromComponents:firstDayComp];
NSDateComponents *lastDayComp = [calendar components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit fromDate:now];
[lastDayComp setDay:day + lastDiff];
NSDate *lastDayOfWeek= [calendar dateFromComponents:lastDayComp];
NSDateFormatter *formater = [[NSDateFormatter alloc] init];
[formater setDateFormat:@"MM-dd"];
// 星期一 当前 星期日
NSString * FirstDayStr = [formater stringFromDate:firstDayOfWeek];
NSString * NowDayStr = [formater stringFromDate:now];
NSString * EndDayStr = [formater stringFromDate:lastDayOfWeek];
// NSLog(@"星期一 %@",FirstDayStr);
// NSLog(@"当前日期 %@",NowDayStr);
// NSLog(@"星期天 %@",EndDayStr);
self.dataTitleLabel.text = [NSString stringWithFormat:@"%@ - %@",FirstDayStr,EndDayStr];
}