黑马程序员技术交流社区

标题: 【武汉校区】分享:iOS之UIDatePicker [打印本页]

作者: 武汉分校-小舞    时间: 2016-4-5 11:46
标题: 【武汉校区】分享:iOS之UIDatePicker
本帖最后由 武汉分校-小舞 于 2016-4-5 11:48 编辑

【武汉校区】分享:iOS之UIDatePicker

1. Locale

设置DatePicker的地区,即设置DatePicker显示的语言。
(1)跟踪所有可用的地区,取出想要的地区
    NSLog(@"%@", [NSLocale availableLocaleIdentifiers]);
   
(2)设置日期选择控件的地区
[datePicker setLocale:[[NSLocale
alloc]initWithLocaleIdentifier:@"zh_Hans_CN"]];
效果:

// 2) 设置日期选择控件的地区
[datePicker setLocale:[[NSLocale allocinitWithLocaleIdentifier:@"en_SC"]];
效果:


2.
Calendar
设置DatePicker的日历。
默认为当天。
[datePicker setCalendar:[NSCalendar currentCalendar]];

3.
timeZone
设置DatePicker的时区。
默认为设置为:[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];
            
  (2)设置倒计时的时长
   注意:设置倒计时时长需要在确定模式之后指定
            倒计时的时长,以秒为单位
   [self.datePicker setCountDownDuration:10 * 60];
效果:
        

8.
minuteInterval
你可以分钟表设置以不同的间间隔来显示分钟,前提是间隔要能够60整除。默间隔是一分钟。如果要使用不同的间隔,需要改变 minuteInterval属性:
// 设置分钟间隔
    datePicker.minuteInterval = 15;

9.
datePickerMode

9.1
UIDatePickerModeTime,  // Displays hour, minute, and optionally AM/PM designation depending on the locale setting (e.g. 6 | 53 | PM)
显示小时,分钟和AM/PM,这个的名称是根据本地设置的
[datePicker setDatePickerMode:UIDatePickerModeTime];
效果图:

9.2
UIDatePickerModeDate,           // Displays month, day, and year depending on the locale setting (e.g. November | 15 | 2007)
显示年月日,名称根据本地设置的
[datePicker setDatePickerMode:UIDatePickerModeDate];
效果图:
   

9.3 默认是显示这种模式
    UIDatePickerModeDateAndTime,    // Displays date, hour, minute, and optionally AM/PM designation depending on the locale setting (e.g. Wed Nov 15 | 6 | 53 | PM)
        显示日期,小时,分钟,和AM/PM,名称是根据本地设置的
[datePicker setDatePickerMode:UIDatePickerModeDateAndTime];          
效果图:

9.4  
  UIDatePickerModeCountDownTimer  // Displays hour and minute (e.g. 1 | 53)
        显示小时和分钟
   [datePicker setDatePickerMode:UIDatePickerModeCountDownTimer];

10.
UIDatePicker使用教程一


10.1初始化
// 不用设置宽高,因为它的宽高是固定的
UIDatePicker *datePicker = [[UIDatePicker alloc] init];
10.2常用设置
// 设置区域为中国简体中文
datePicker.locale = [[NSLocale alloc]
                                                        initWithLocaleIdentifier:@"zh_CN"];
// 设置picker的显示模式:只显示日期
datePicker.datePickerMode = UIDatePickerModeDate;
10.3UIDatePicker需要监听值的改变
[datePicker addTarget:self action:@selector(dateChangeundefined
forControlEvents:UIControlEventValueChanged];

11.UIDatePicker使用教程二

11.1日期范
你可以通过设置mininumDate 和 maxinumDate 属性,来指定使用的日期范围。如果用户试图滚动到超出这一范围的日期,表盘会回滚到最近的有效日期。两个方法都需要NSDate 对象作参数:



11.2 如果两个日期范属性中任何一个未被设置,为将会允用户选择过去或未的任意日期。在某些情况下很有用处,比如,当选择生日,可以是去的任意日期,但止与前日期。如果你希望设置默认显示的日期,可以使用date属性:

11.3 此外,你可以用 setDate 方法。如果选择了使用动画,会滚动到你指定的日期:

一键获取传智播客武汉中心分享技术文章请加QQ  1641907557
后期会分享更多与实体班同步教程,助你冲击月薪20K!


推荐阅读:

《【武汉中心】iOS实体班笔记+配套面试/项目宝典,冲击月薪20K!》
《【武汉分校】UI实体班同步教程+海量素材,打造年薪20W全能设计师》






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2