广

IOS开发

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

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

    2018-04-04 08:34:55 次阅读 稿源:互联网
    广告

    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]);

    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];

    一起学吧部分文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与一起学吧进行文章共享合作。

    广告
    广告
    广告