iOS开发中UIDatePicker控件的使用方法简介

所属分类: 软件编程 / IOS 阅读数: 876
收藏 0 赞 0 分享

iOS上的选择时间日期的控件是这样的,左边是时间和日期混合,右边是单纯的日期模式。

 

201511892806120.png (321×214)您可以选择自己需要的模式,Time, Date,Date and Time  , Count Down Timer四种模式。

201511892826005.png (686×434)

本篇文章简单介绍下PickerDate控件的使用
1、新建一个Singe View Application,命名为DatePickDemo,其他设置如图

201511892852672.png (728×491)

2、放置控件
打开ViewController.xib,拖拽一个DatePicker控件放到界面上,再拖拽一个Button控件放到界面上,双击Button,输入"选择日期时间"

201511892914700.png (339×503)

3、建立xib和ViewController的关联
按下command+alt+enter键打开Assistant Editor,选中DatePicker按住Control键,拖拽到viewController.h上,

201511892950065.png (634×183)

建立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];
}

运行看效果:

201511893012053.png (368×716)

5、修改模式成Date模式,修改代码

复制代码 代码如下:

    [dateFormatter setDateFormat:@"yyyy-MM-dd"];


201511893036923.png (368×716)

常用参数
上面已经提到了一些常用参数的使用,下面再来列一下比较常用的几个:
1.Locale
设置DatePicker的地区,即设置DatePicker显示的语言。

跟踪所有可用的地区,取出想要的地区

复制代码 代码如下:

NSLog(@"%@", [NSLocale availableLocaleIdentifiers]);

2. 设置日期选择控件的地区
复制代码 代码如下:

[datePicker setLocale:[[NSLocale alloc]initWithLocaleIdentifier:@"zh_Hans_CN"]];

复制代码 代码如下:

[datePicker setLocale:[[NSLocale alloc]initWithLocaleIdentifier:@"en_SC"]];

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(dateChange:) forControlEvents:UIControlEventValueChanged];

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

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;


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

datePicker.date = minDate;

11.3 此外,你还可以用 setDate 方法。如果选择了使用动画,则表盘会滚动到你指定的日期:
复制代码 代码如下:

[ datePicker setDate:maxDate animated:YES];

更多精彩内容其他人还在看

详解优化iOS程序性能的25个方法

本篇文章主要介绍了优化iOS程序性能的25个方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解iOS开发中解析JSON中的boolean类型的数据遇到的问题

这篇文章主要介绍了详解iOS开发中解析JSON中的boolean类型的数据遇到的问题,具有一定的参考价值,有兴趣的可以了解一下。
收藏 0 赞 0 分享

iOS中模态Model视图跳转和Push视图跳转的需求实现方法

这篇文章主要介绍了iOS中模态Model视图跳转和Push视图跳转的需求实现,非常不错,具有参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

iOS+PHP注册登录系统 iOS部分(下)

这篇文章主要介绍了iOS+PHP注册登录系统的iOS部分,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

详解iOS - ASIHTTPRequest 网络请求

本篇文章主要介绍了iOS - ASIHTTPRequest 网络请求 ,详细的介绍了 ASIHTTPRequest的使用,具有一定的参考价值,有兴趣的可以了解一下。
收藏 0 赞 0 分享

零基础学习iOS直播之采集

直播的采集由采集的设备(摄像头、话筒)不同分为视频采集和音频采集,本篇文章会分别介绍,需要的朋友一起来看下吧
收藏 0 赞 0 分享

iOS自带动画效果的实例代码

本文给大家分享ios自带动画效果的实现代码,非常不错,具有参考借鉴价值,需要的朋友参考下吧
收藏 0 赞 0 分享

零基础学习iOS直播之播放

对于直播来说,客户端主要做两件事情,推流和播放。本篇主要对播放进行详细介绍,需要的朋友一起来看下吧
收藏 0 赞 0 分享

详解iOS中集成ijkplayer视频直播框架

ijkplayer 是一款做视频直播的框架, 基于ffmpeg, 支持Android和iOS,本文将详细的讲一下在iOS中如何集成ijkplayer, 即便以前从没有接触过,按着下面做也可以集成成功!下面跟着小编一起来看下吧
收藏 0 赞 0 分享

iOS 将系统自带的button改装成上图片下文字的样子

这篇文章主要介绍了 iOS 将系统自带的button改装成上图片下文字的样子,代码是通过继承UIButton,然后再重写layoutSubviews方法,对自带的图片和titleLabel进行重新的layout。下面通过本文给大家分享下实现代码
收藏 0 赞 0 分享
查看更多