datepick

来源:互联网 发布:python和php学哪个 编辑:程序博客网 时间:2024/05/17 03:13

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];
  


0 0
原创粉丝点击