具体的讲解请到datepicker
一.概念
UIDatePicker 是一个控制器类,封装了 UIPickerView,但是他是UIControl的子类,专门用于接受日期、时间和持续时长的输入。日期选取器的各列会按照指定的风格进行自动配置,这样就让开发者不必关心如何配置表盘这样的底层操作。你也可以对其进行定制,令其使用任何范围的日期。
UIDatePicker 依赖于 NSDate 类,这个类是cocoa 基础的一员,以前用于桌面系统。
二.使用方法
- 1.UIDatePicker的使用方法很简单,只需要创建一个对象
- 2设置设置本地化支持的语言(在此是中文)
- 3.设置显示方式
- 4.添加到指定地方
- 具体的代码(UIDatePicker是一个控制器继承于UIControl)
//创建一个UIPickView对象 UIDatePicker *datePicker = [[UIDatePicker alloc]init]; //自定义位置 datePicker.frame = CGRectMake(0, KWindowHeight*0.4-240, 414, 150); //设置背景颜色 datePicker.backgroundColor = [UIColor greenColor]; //datePicker.center = self.center; //设置本地化支持的语言(在此是中文) datePicker.locale = [NSLocale localeWithLocaleIdentifier:@"zh"]; //显示方式是只显示年月日 datePicker.datePickerMode = UIDatePickerModeDate; //放在盖板上 [self.view addSubview:datePicker];
最后的效果图
- 在选择后打印出我们选择的 datePicker.date,不能直接输出,需要进行日期格式转化为字符串再输出
NSDate *date = datePicker.date; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init]; [dateFormatter setDateFormat:@"yyyy年MM月dd日"]; NSString *string = [[NSString alloc]init]; string = [dateFormatter stringFromDate:date];
- 这样转换之后才是我们可以看到我们选择的年月日以及更多的选择
总结:(代码放到gitHub上)
- 里面涉及的的知识点还是挺多的,有盖板,有window,还有日期的转换,还有block传值,block不仅可以传值,还可以传方法
- 颜色什么自己修改,本人水平有限。本题建议使用者采用键盘跳出来选择日期。
- 用法:只需要在想跳出的地方输入下面一句代码:
UIPickDate *pickdate = [UIPickDate setDate]; 传选择好的东西采用block,工程里面有过程
- 本地化的格式可以更改(打印出来自己选择,中文是zh)
NSArray *local = [NSLocale availableLocaleIdentifiers];//返回值是一个数组
NSLog(@"%@",local);