服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - IOS - iOS开发中UIDatePicker控件的使用方法简介

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

2020-12-28 11:06容芳志 IOS

这篇文章主要介绍了iOS开发中UIDatePicker控件的使用方法简介,用来处理各种时间日期的选择,需要的朋友可以参考下

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

 

iOS开发中UIDatePicker控件的使用方法简介您可以选择自己需要的模式,time, date,date and time  , count down timer四种模式。

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

本篇文章简单介绍下pickerdate控件的使用
1、新建一个singe view application,命名为datepickdemo,其他设置如图

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

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

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

3、建立xib和viewcontroller的关联
按下command+alt+enter键打开assistant editor,选中datepicker按住control键,拖拽到viewcontroller.h上,

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

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


运行看效果:

 

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

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

 

复制代码 代码如下:


    [dateformatter setdateformat:@"yyyy-mm-dd"];

 

 

 

 

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

常用参数
上面已经提到了一些常用参数的使用,下面再来列一下比较常用的几个:
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];

延伸 · 阅读

精彩推荐
  • IOSiOS中UILabel实现长按复制功能实例代码

    iOS中UILabel实现长按复制功能实例代码

    在iOS开发过程中,有时候会用到UILabel展示的内容,那么就设计到点击UILabel复制它上面展示的内容的功能,也就是Label长按复制功能,下面这篇文章主要给大...

    devilx12792021-04-02
  • IOSiOS开发技巧之状态栏字体颜色的设置方法

    iOS开发技巧之状态栏字体颜色的设置方法

    有时候我们需要根据不同的背景修改状态栏字体的颜色,下面这篇文章主要给大家介绍了关于iOS开发技巧之状态栏字体颜色的设置方法,文中通过示例代码...

    梦想家-mxj8922021-05-10
  • IOSiOS中滑动控制屏幕亮度和系统音量(附加AVAudioPlayer基本用法和Masonry简单使用)

    iOS中滑动控制屏幕亮度和系统音量(附加AVAudioPlayer基本用法和

    这篇文章主要介绍了iOS中滑动控制屏幕亮度和系统音量(附加AVAudioPlayer基本用法和Masonry简单使用)的相关资料,需要的朋友可以参考下...

    CodingFire13652021-02-26
  • IOSiOS自定义UICollectionViewFlowLayout实现图片浏览效果

    iOS自定义UICollectionViewFlowLayout实现图片浏览效果

    这篇文章主要介绍了iOS自定义UICollectionViewFlowLayout实现图片浏览效果的相关资料,需要的朋友可以参考下...

    jiangamh8882021-01-11
  • IOSiOS中MD5加密算法的介绍和使用

    iOS中MD5加密算法的介绍和使用

    MD5加密是最常用的加密方法之一,是从一段字符串中通过相应特征生成一段32位的数字字母混合码。对输入信息生成唯一的128位散列值(32个字符)。这篇文...

    LYSNote5432021-02-04
  • IOSiOS实现控制屏幕常亮不变暗的方法示例

    iOS实现控制屏幕常亮不变暗的方法示例

    最近在工作中遇到了要将iOS屏幕保持常亮的需求,所以下面这篇文章主要给大家介绍了关于利用iOS如何实现控制屏幕常亮不变暗的方法,文中给出了详细的...

    随风13332021-04-02
  • IOS详解iOS中多个网络请求的同步问题总结

    详解iOS中多个网络请求的同步问题总结

    这篇文章主要介绍了详解iOS中多个网络请求的同步问题总结,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    liang199111302021-03-15
  • IOSiOS开发之视图切换

    iOS开发之视图切换

    在iOS开发中视图的切换是很频繁的,独立的视图应用在实际开发过程中并不常见,除非你的应用足够简单。在iOS开发中常用的视图切换有三种,今天我们将...

    执着丶执念5272021-01-16