前言

	NS_CLASS_AVAILABLE_IOS(2_0) __TVOS_PROHIBITED @interface UIDatePicker : UIControl <NSCoding>
@available(iOS 2.0, *) public class UIDatePicker : UIControl, NSCoding
  • UIDatePicker 是 UIKit 控件中提供日期和时间选择的控件。

1、DatePicker 的创建

  • Objective-C

    	// 不设置 frame 时为系统默认大小
    UIDatePicker *datePicker = [[UIDatePicker alloc] init]; // 将 datePicker 添加到屏幕上
    [self.view addSubview:datePicker];
  • Swift

    	// 不设置 frame 时为系统默认大小
    let datePicker:UIDatePicker = UIDatePicker() // 将 datePicker 添加到屏幕上
    self.view.addSubview(datePicker)

2、DatePicker 的设置

  • Objective-C

    	// 设置 frame
    /*
    不设置 frame 时为系统默认大小
    */
    datePicker.frame = CGRectMake(50, 100, self.view.bounds.size.width - 100, 300); // 设置位置
    datePicker.center = self.view.center; // 设置显示模式
    /*
    UIDatePickerModeTime, // 仅显示时间,不显示日期
    UIDatePickerModeDate, // 仅显示日期,不显示时间
    UIDatePickerModeDateAndTime, // 同时显示日期和时间,默认
    UIDatePickerModeCountDownTimer, // 显示为倒计时状态
    */
    datePicker.datePickerMode = UIDatePickerModeDateAndTime; // 设置本地化信息
    /*
    default is [NSLocale currentLocale]. setting nil returns to default
    */
    datePicker.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]; // 设置时区
    /*
    default is nil. use current time zone or time zone from calendar
    */
    datePicker.timeZone = [NSTimeZone systemTimeZone]; // 设置日历
    /*
    default is [NSCalendar currentCalendar]. setting nil returns to default
    */
    datePicker.calendar = [NSCalendar currentCalendar]; // 设置时间
    /*
    default is current date when picker created.
    */
    datePicker.date = [NSDate date];
    [datePicker setDate:[NSDate dateWithTimeIntervalSinceNow:60*60*26] animated:YES]; // 设置最小的时间
    /*
    default is nil
    */
    datePicker.minimumDate = [NSDate dateWithTimeIntervalSince1970:0]; // 设置最大时间
    /*
    default is nil
    */
    datePicker.maximumDate = [NSDate dateWithTimeIntervalSinceNow:60*60*24*7]; // 设置可以调整的最小时间间隔(分钟)
    /*
    interval must be evenly divided into 60. default is 1. min is 1, max is 30
    */
    datePicker.minuteInterval = 2; // 设置倒计时时间值(秒)
    /*
    default is 0.0. limit is 23:59 (86,399 seconds)。必须为 60 的整数倍,比如设置为 100,值自动变为 60
    */
    datePicker.countDownDuration = 60*60; // 添加点击触发事件
    [datePicker addTarget:self action:@selector(datePickerChanged:) forControlEvents:UIControlEventValueChanged];
  • Swift

    	// 设置 frame
    /*
    不设置 frame 时为系统默认大小
    */
    datePicker.frame = CGRectMake(50, 100, self.view.bounds.size.width - 100, 300) // 设置位置
    datePicker.center = self.view.center // 设置显示模式
    /*
    case Time // 仅显示时间,不显示日期
    case Date // 仅显示日期,不显示时间
    case DateAndTime // 同时显示日期和时间,默认
    case CountDownTimer // 显示为倒计时状态
    */
    datePicker.datePickerMode = .DateAndTime // 设置本地化信息
    /*
    default is [NSLocale currentLocale]. setting nil returns to default
    */
    datePicker.locale = NSLocale(localeIdentifier: "en_US") // 设置时区
    /*
    default is nil. use current time zone or time zone from calendar
    */
    datePicker.timeZone = NSTimeZone.systemTimeZone() // 设置日历
    /*
    default is [NSCalendar currentCalendar]. setting nil returns to default
    */
    datePicker.calendar = NSCalendar.currentCalendar() // 设置时间
    /*
    default is current date when picker created
    */
    datePicker.date = NSDate()
    datePicker.setDate(NSDate(timeIntervalSinceNow: 60*60*26), animated: true) // 设置最小的时间
    /*
    default is nil
    */
    datePicker.minimumDate = NSDate(timeIntervalSince1970: 0) // 设置最大时间
    /*
    default is nil
    */
    datePicker.maximumDate = NSDate(timeIntervalSinceNow: 60*60*24*7) // 设置可以调整的最小时间间隔(分钟)
    /*
    interval must be evenly divided into 60. default is 1. min is 1, max is 30
    */
    datePicker.minuteInterval = 2 // 设置倒计时时间值(秒)
    /*
    default is 0.0. limit is 23:59 (86,399 seconds)。必须为 60 的整数倍,比如设置为 100,值自动变为 60
    */
    datePicker.countDownDuration = 60*60 // 添加点击触发事件
    datePicker.addTarget(self, action: #selector(UiDatePicker.datePickerChanged(_:)), forControlEvents: .ValueChanged)

iOS - UIDatePicker的更多相关文章

  1. iOS UIDatePicker frame改变问题

    这种方法不行: pickerCtl = UIDatePicker(frame:pickerFrame) 但是这种却行 pickerCtl = UIDatePicker() pickerCtl!.fra ...

  2. iOS UIDatePicker设置为中文的方法

    UIDatePicker *datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 20, 200, 30)]; datePick ...

  3. object-c的http post请求之 ASIFormDataRequest使用

    ASIHTTPRequest类库中的ASIFormDataRequest是实现HTTP协议中的处理POST表单的很好的类库.使用起来非常简单. 在说明之前先需要了解HTTP请求的Get和Post方法. ...

  4. iOS学习之自定义弹出UIPickerView或UIDatePicker(动画效果)

    前面iOS学习之UIPickerView控件的简单使用 用到的UIPickerView弹出来是通过 textField.inputView = selectPicker;   textField.in ...

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

    iOS上的选择时间日期的控件是这样的,左边是时间和日期混合,右边是单纯的日期模式. 您可以选择自己需要的模式,Time, Date,Date and Time  , Count Down Timer四 ...

  6. iOs基础篇(二十二)—— UIPickerView、UIDatePicker控件的使用

    一.UIPickerView UIPickerView是一个选择器控件,可以生成单列的选择器,也可生成多列的选择器,而且开发者完全可以自定义选择项的外观,因此用法非常灵活. 1.常用属性 (1)num ...

  7. iOS开发--UIDatePicker

    UIDatePicker 是一个控制器类,封装了 UIPickerView,但是他是UIControl的子类,专门用于接受日期.时间和持续时长的输入.日期选取器的各列会按照指定的风格进行自动配置,这样 ...

  8. IOS第11天(4:UIDatePicker时间选择,和键盘处理,加载xib文件,代理模式)

    ***控制层 #import "ViewController.h" #import "CZKeyboardToolbar.h" @interface ViewC ...

  9. UIDatePicker 日期/时间选取器(滚轮)—IOS开发

    UIDatePicker 是一个控制器类,封装了 UIPickerView,但是他是UIControl的子类,专门用于接受日期.时间和持续时长的输入.日期选取器的各列会按照指定的风格进行自动配置,这样 ...

随机推荐

  1. Hive报错之java.sql.SQLException: Field 'IS_STOREDASSUBDIRECTORIES' doesn't have a default value

    在创建表的时候报出如下错误: hive> create table if not exists testfile_table( > site string, > url string ...

  2. 【PHP设计模式 07_ZeRenLian.php】责任链模式

    <?php /** * [责任链模式] * 情景设置:根据不同的需求,去找相应级别的责任人解决问题 */ header("Content-type: text/html; charse ...

  3. JavaEE基础(十九)/异常和File

    1.异常(异常的概述和分类) A:异常的概述 异常就是Java程序在运行过程中出现的错误. B:异常的分类 通过API查看Throwable Error 服务器宕机,数据库崩溃等 Exception ...

  4. Oracle导出的sql执行出错

    建的表如果有constraint的话sql语句中会有create unique index...而在前面的建表语句中,这个index实际上已经建好了. 所以导出的sql语句,应该将后面的create ...

  5. 查找练习 hash——出现过的数字 分类: 查找 2015-06-18 17:30 7人阅读 评论(0) 收藏

    查找练习 hash--出现过的数字 *Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 有一个数据字典,里面存有n个数字(n<=10 ...

  6. Animator组件关闭再打开后参数丢失问题

    问题如下,因为再激活Animator时,它会重置一次,参数也会丢失 这个问题一直存在,论坛给出的解释是把参数缓存下来,在激活时重置 http://answers.unity3d.com/questio ...

  7. Uva 1347,旅行

    题目链接:https://uva.onlinejudge.org/external/13/1347.pdf 这个题和uva 1658题目很像,只是加了一点,就是每个点都要走,刚开始,我以为可以直接拆点 ...

  8. Poj(2784),二进制枚举最小生成树

    题目链接:http://poj.org/problem?id=2784 Buy or Build Time Limit: 2000MS   Memory Limit: 65536K Total Sub ...

  9. An Easy C Program Problem

    找幸运数 题目描述 数字8最多的那个数为幸运数. 输入n和n个整数,找这n个数中的幸运数.在主函数中调用ndigit函数,判断某个整数x含数字8的个数.如果有多个幸运数输出第一个幸运数,如果所有的数中 ...

  10. Collection的toArray()使用上需要注意的地方

    转载:http://llade.iteye.com/blog/199818 Collection在很多情况下需要转换为数组来处理(很多接口方法都使用array作为参数). Collection的toA ...