好记性不如烂笔头,勤做笔记。

摘要:

1.UIPickVIew 几个重要的属性

  (1)datePickerMode

UIDatePickerModeTime,           // Displays hour, minute, and optionally AM/PM designation depending on the locale setting (e.g. 6 | 53 | PM)
UIDatePickerModeDate, // Displays month, day, and year depending on the locale setting (e.g. November | 15 | 2007)
UIDatePickerModeDateAndTime, // Displays date, hour, minute, and optionally AM/PM designation depending on the locale setting (e.g. Wed Nov 15 | 6 | 53 | PM)
UIDatePickerModeCountDownTimer
UIDatePickerModeTime:显示时分  还有上午下午 12小时制
UIDatePickerModeDate:显示年月日  12小时制
UIDatePickerModeDateAndTime:显示年月日时分 12小时制
UIDatePickerModeCountDownTimer:显示时分,24小时制

根据自己的需求选择相应的datePickerMode属性。
 
@property (nullable, nonatomic, strong) NSDate *minimumDate; // specify min/max date range. default is nil. When min > max, the values are ignored. Ignored in countdown timer mode
@property (nullable, nonatomic, strong) NSDate *maximumDate;
最大最小时间。限制了最大最小时间之后,此控件就可以自己会滚到设定的时间,不会在日期之前停留。

2.UIPickVIew 几个重要的方法

    设置一个监听,用来监听pickVie的值的变化

[startPicker addTarget:self action:@selector(startPick:) forControlEvents:UIControlEventValueChanged];

3.使用汇总遇到的问题

  选的时间存在8小时的时差解决方案

//获得的时间与本地的时间差8个小时
NSDate *date=sender.date; NSDateFormatter *formatter=[[NSDateFormatter alloc]init];
formatter.dateFormat=@"yy-MM-dd HH:mm:ss"; //经过时间的格式化会变成本地时间
NSString *timeStr=[formatter stringFromDate:date]; NSLog(@"date-----%@",date);
NSLog(@"timeStr-------%@",timeStr);

这样就可以解决了。

下边附上我写的demo的主要代码:

//
// ViewController.m
// demoUIDatePicker
//
// Created by taoli on 2017/7/20.
// Copyright © 2017年 XM. All rights reserved.
// #import "ViewController.h" @interface ViewController ()
{
UIDatePicker *startPicker;
UIDatePicker *endPicker;
}
@end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad]; startPicker = [[UIDatePicker alloc]initWithFrame:CGRectMake(, , [UIScreen mainScreen].bounds.size.width, )];
startPicker.datePickerMode = UIDatePickerModeDateAndTime;
NSDate *minDate = [[NSDate alloc]initWithTimeIntervalSinceNow:];
startPicker.minimumDate = minDate;
startPicker.backgroundColor = [UIColor yellowColor];
[startPicker addTarget:self action:@selector(startPick:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:startPicker]; endPicker = [[UIDatePicker alloc]initWithFrame:CGRectMake(, , [UIScreen mainScreen].bounds.size.width, )];
endPicker.datePickerMode = UIDatePickerModeTime; endPicker.minimumDate =startPicker.date;
endPicker.backgroundColor = [UIColor yellowColor];
[self.view addSubview:endPicker]; }
-(void)startPick:(UIDatePicker*)sender{ //获得的时间与本地的时间差8个小时
NSDate *date=sender.date; NSDateFormatter *formatter=[[NSDateFormatter alloc]init];
formatter.dateFormat=@"yy-MM-dd HH:mm:ss"; //经过时间的格式化会变成本地时间
NSString *timeStr=[formatter stringFromDate:date]; NSLog(@"date-----%@",date);
NSLog(@"timeStr-------%@",timeStr); // NSTimeZone *timeZone=[NSTimeZone systemTimeZone];
// NSInteger seconds=[timeZone secondsFromGMTForDate:date];
// NSDate *newDate=[date dateByAddingTimeInterval:seconds];
// NSString *newTimeStr=[formatter stringFromDate:newDate];
// NSLog(@"newDate----%@",newDate);
// NSLog(@"newTimeStr-------%@",newTimeStr); // NSLog(@"%@",sender.date); endPicker.minimumDate = sender.date; } - (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
} @end

如发现问题,欢迎不吝赐教。

邮箱673658917@qq.com

UIPickView的简单使用的更多相关文章

  1. UIPickView的简单介绍

    UIPickView的简单介绍 设置UIPickView的时候,我们主要需要设置一下下面的两个属性 UIPickerView *pickView1; pickView1 = [[UIPickerVie ...

  2. UIPickView 和 UIDatePicker

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  3. iOS开发——高级UI之OC篇&UIdatePicker&UIPickerView简单使用

    UIdatePicker&UIPickerView简单使用 /***************************************************************** ...

  4. 点菜系统 pickview的简单实用

    使用pickview的时候多想想tableview的使用,观察两者的相同之处 pickview的主要用途用于选择地区  生日年月日  和点餐 示例代码 简单的pickview点餐系统//  ViewC ...

  5. UIPickerView的简单使用

    UIPickerView是一个选择器它可以生成单列的选择器,也可生成多列的选择器,而且开发者完全可以自定义选择项的外观,因此用法非常灵活,使用也比较简单.下面做了一个关于天气预报的小Demo 用 UI ...

  6. IOS UIPickView+sqlite 选择中国全部城市案例

    1.案例简单介绍 通过读取文件.将中国全部城市写入sqlite数据库中,现通过UIPickView实现中国全部城市的选择,效果图例如以下所看到的 2.城市对象模型 中国全部城市数据请看http://b ...

  7. 【造轮子】打造一个简单的万能Excel读写工具

    大家工作或者平时是不是经常遇到要读写一些简单格式的Excel? shit!~很蛋疼,因为之前吹牛,就搞了个这东西,还算是挺实用,和大家分享下. 厌烦了每次搞简单类型的Excel读写?不怕~来,喜欢流式 ...

  8. Fabio 安装和简单使用

    Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...

  9. node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理

    一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...

随机推荐

  1. jira仪表盘的建立与共享

    一般在项目测试阶段,可以通过jira仪表盘清晰的展示bug的各个状态的数量,各个开发人员的bug数量. 有效督促开发解决问题. 也为测试日报提供了良好的数据支持,减少人工统计的工作量. 1.建议筛选器 ...

  2. NPOI升级版本问题

    最近做了一个导出Word的功能,需要样式与排版果断选择了NPOI,本以为支持Excel很好,支持Word应该也不会错吧,万万没想到还是挣扎了小一星期. 我的项目是一个13年项目,NPOI版本还很旧,我 ...

  3. 记Centos7和RHEL连接不上网络

    一 .前言 我是把Linux系统安装在虚拟机中的,用的是VMware. 在终端工具和操作界面中. VMware里面采用的网络适配器是NAT技术. 标题中的Centos和RHEL区别就不多说了,自行百度 ...

  4. JVM 专题七:运行时数据区(二)程序计数器

    1.程序计数器 1. 什么是PC寄存器(程序计数器)? JVM中的程序计数寄存器(Program Counter Register)中,Register的命名源于CPU的寄存器,寄存器存储指令相关的现 ...

  5. java IO流 (三) 节点流(或文件流)

    1.FileReader/FileWriter的使用:1.1 FileReader的使用 /* 将day09下的hello.txt文件内容读入程序中,并输出到控制台 说明点: 1. read()的理解 ...

  6. np.nan is an invalid document, expected byte or unicode string.

    ValueError Traceback (most recent call last) <ipython-input-12-1dc462ae8893> in <module> ...

  7. typeError:The value of a feed cannot be a tf.Tensor object.Acceptable feed values include Python scalars,strings,lists.numpy ndarrays,or TensorHandles.For reference.the tensor object was Tensor...

    如上贴出了:错误信息和错误代码. 这个问题困扰了自己两天,报错大概是说输入的数据和接受的格式不一样,不能作为tensor. 后来问了大神,原因出在tf.reshape(),因为网络训练时用placeh ...

  8. Hadoop进阶命令使用介绍

    hadoop生产环境的使用是很复杂的,有些公司是CDH或者Ambari等管理工具运维的,有些是原生的集群俗称裸奔,前者优缺点是运维,查看监控等容易,对于底层理解不友好:裸奔集群反之,裸奔集群的很多东西 ...

  9. winserver2008R2安装配置JDK+tomcat之坑

    记一次winserver安装jdk+tomcat 准备软件: jdk-8u241-windows-x64 apache-tomcat-8.5.46-windows-x64 一.安装java 1.安装j ...

  10. bzoj3043IncDec Sequence*

    bzoj3043IncDec Sequence 题意: n个数,每次可以将区间l到r里的数+1或-1,问将它们变成同个数的最小操作次数和保证最小操作次数前提下有多少中可能.n≤100000. 题解: ...