1.取到datepick的时间
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSString *datestr = [formatter stringFromDate:_DatePick.date];
_DatePicker.backgroundColor = [UIColor lightGrayColor];//设置背景颜色,但时间选择器大小和间隔好像是固定的,就算初始化一个时间选取器也不会因为代码设置的frame大小而改变。这时候需要自定义datepick了
_DatePicker.datePickerMode = UIDatePickerModeDate;//时间选择器有四种类型 UIDatePickerModeCountDownTimer, UIDatePickerModeDate,UIDatePickerModeDateAndTime,UIDatePickerModeTime
[_DatePicker addTarget:self action:@selector(getDate) forControlEvents:UIControlEventValueChanged];//datepick建立事件
2.取到datepick选取的日期上的具体信息,如年月日星期几等
NSDate *now =[NSDate date];
NSCalendar *calendar =[[NSCalendar alloc]initWithCalendarIdentifier:NSGregorianCalendar];
// NSCalendar *calendar =[NSCalendar currentCalendar];
NSUInteger u = NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit|NSWeekdayCalendarUnit|NSHourCalendarUnit|NSMinuteCalendarUnit|NSSecondCalendarUnit;
NSDateComponents *datecomponent =[calendar components:u fromDate:now];
NSLog(@"%d",(int)[datecomponent year]);
NSLog(@"%d",(int)[datecomponent day]);
NSLog(@"%d",(int)[datecomponent weekday]);//从周日开始,开始为0
3.计算时间间隔
NSDate *now = [NSDate date];
NSTimeInterval time = [now timeIntervalSinceDate:_DatePick.date];
NSUInteger year = time/(3600*24*365);//间隔几年,计算间隔多少日原理一样
-(NSString *)getDate:(int)i{
NSTimeInterval betweentime = -(24*60*60)*i;
NSDate *date = [NSDate dateWithTimeIntervalSinceNow:betweentime];
return [formatter stringFromDate:date];
}
//得到过去几天的时间日期,比如昨天 [self getDate:0];