iOS上的选择时间日期的控件是这样的,左边是时间和日期混合,右边是单纯的日期模式。
您可以选择自己需要的模式,Time, Date,Date and Time , Count Down Timer四种模式。
本篇文章简单介绍下PickerDate控件的使用
1、新建一个Singe View Application,命名为DatePickDemo,其他设置如图
2、放置控件
打开ViewController.xib,拖拽一个DatePicker控件放到界面上,再拖拽一个Button控件放到界面上,双击Button,输入"选择日期时间"
3、建立xib和ViewController的关联
按下command+alt+enter键打开Assistant Editor,选中DatePicker按住Control键,拖拽到viewController.h上,
建立Outlet datePicker。
以同样方式给Button建立一个Action关联映射,命名为selectDate,事件类型为默认的Touch Up Inside。
4、实现代码
单击ViewController.m,找到刚才创建的
- (IBAction)selectDate:(id)sender { }
- (IBAction)selectDate:(id)sender { NSDate *select = [datePicker date]; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm"]; NSString *dateAndTime = [dateFormatter stringFromDate:select]; UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"时间提示" message:dateAndTime delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil, nil]; [alert show]; }
5、修改模式成Date模式,修改代码
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
常用参数
上面已经提到了一些常用参数的使用,下面再来列一下比较常用的几个:
1.Locale
设置DatePicker的地区,即设置DatePicker显示的语言。
跟踪所有可用的地区,取出想要的地区
NSLog(@"%@", [NSLocale availableLocaleIdentifiers]);
[datePicker setLocale:[[NSLocale alloc]initWithLocaleIdentifier:@"zh_Hans_CN"]];
[datePicker setLocale:[[NSLocale alloc]initWithLocaleIdentifier:@"en_SC"]];
默认为当天。
[datePicker setCalendar:[NSCalendar currentCalendar]];
默认为设置为:
[datePicker setTimeZone:[NSTimeZone defaultTimeZone]];
4.date
设置DatePicker的日期。
默认设置为:
[datePicker setDate:[NSDate date]];
5.minimumDate
设置DatePicker的允许的最小日期。
6.maximumDate
设置DatePicker的允许的最大日期。
7.countDownDuration
设置DatePicker的倒计时间.
1) 设置日期选择的模
[self.datePicker setDatePickerMode:UIDatePickerModeCountDownTimer];
注意:设置倒计时时长需要在确定模式之后指定
// 倒计时的时长,以秒为单位[self.datePicker setCountDownDuration:10 * 60];
// 设置分钟间隔datePicker.minuteInterval = 15;
// Displays hour, minute, and optionally AM/PM designation depending on the locale setting (e.g. 6 | 53 | PM)
[datePicker setDatePickerMode:UIDatePickerModeTime];
// Displays month, day, and year depending on the locale setting (e.g. November | 15 | 2007)
显示年月日,名称根据本地设置的
[datePicker setDatePickerMode:UIDatePickerModeDate];
UIDatePickerModeDateAndTime, // Displays date, hour, minute, and optionally AM/PM designation depending on the locale setting
显示日期,小时,分钟,和AM/PM,名称是根据本地设置的
[datePicker setDatePickerMode:UIDatePickerModeDateAndTime];
UIDatePickerModeCountDownTimer // Displays hour and minute (e.g. 1 | 53)
[datePicker setDatePickerMode:UIDatePickerModeCountDownTimer];
// 不用设置宽高,因为它的宽高是固定的UIDatePicker *datePicker = [[UIDatePicker alloc] init];
// 设置区域为中国简体中文datePicker.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"zh_CN"];
// 设置picker的显示模式:只显示日期
datePicker.datePickerMode = UIDatePickerModeDate;
[datePicker addTarget:self action:@selector(dateChange:) forControlEvents:UIControlEventValueChanged];
NSDate* minDate = [[NSDate alloc]initWithString:@"1900-01-01 00:00:00 -0500"];NSDate* maxDate = [[NSDate alloc]initWithString:@"2099-01-01 00:00:00 -0500"];
datePicker.minimumDate = minDate;
datePicker.maximumDate = maxDate;
datePicker.date = minDate;
[ datePicker setDate:maxDate animated:YES];
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。