1.NSDate类
2.NSDateFormatter
3.NSCalendar
4.UIDatePicker
-----------------------------------------------------------------------------------------
NSDate
- NSDate是系统一个日期,时间类
- 就是返回当期的日期,时间
- + (id)date;
- 返回未来secs秒后的日期,时间
- + (id)dateWithTimeIntervalSinceNow:(NSTimeInterval)secs;
distantFuture / distantPast
- 未来永远达不到的时间
- + (id)distantFuture;
- 4001-01-01 00:00:00 +0000
- 过去的时间
- + (id)distantPast;
- 0001-01-01 00:00:00 +0000
NSDateFormatter
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init]; [dateFormatter setDateFormatter:@"YYYY-MM-dd"]; NSString *d1=[dateFormatter stringFromDate:date]; NSLog(@"date d1 is %@",d1); [dateFormatter setDateFormatter:@"YYYY年MM月dd日"]; NSString *d2=[dateFormatter stringFormDate:date]; NSLog(@"date d2 is %@",d2); [dateFormatter release];
输出结果:
date d1 is 2012-08-05
date d2 is 2012年08月05日
NSCalendar
得到当前日期,时间
NSDate *date = [NSDate date]; NSCalendar *cal = [NSCalendar currentCalendar]; NSDateComponents *components = [cal components: NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit fromDate:date];
UIDatePicker
UIDatePicker *datePicker;
/* 得到当前日期,时间 */
NSDate *date = [NSDate date];
/* 设置UIDatePicker—开始的时间 */
[datePicker setDate:date animated:YES];
/* 得到在UIDatePicker上选中的时间 */
NSDate *currDate = datePicker.date;
UIDatePicker事件处理
- UIControlEventValueChanged
- UIDatePicker每次值改变时候就会处理该事件
- 事件处理方式
[datePicker addTarget:self
action:@selector(dateChanged:)
forControlEvents:UIControlEventValueChanged];