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

摘要:

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. python数据处理(五)之数据清洗:研究、匹配与格式化

    1 前言 保持数据格式一致以及可读,否则数据不可能正确合并 清洗数据的过程中记下清洗过程的每一步,方便数据回溯以及过程复用 2 数据清洗基础知识 2.1 找出需要清洗的数据 仔细观察文件,观察数据字段 ...

  2. 数据可视化实例(八): 边缘直方图(matplotlib,pandas)

    https://datawhalechina.github.io/pms50/#/chapter6/chapter6 边缘直方图 (Marginal Histogram) 边缘直方图具有沿 X 和 Y ...

  3. vue axios接口封装、Promise封装、简单的axios方法封装、vue接口方法封装、vue post、get、patch、put方法封装

    相信大家在做前后端数据交互的时候都会给请求做一些简单的封装就像之前封装ajax方法一样axios的封装也是一样的简单下面这个就是封装的axios的方法,require.js import axios ...

  4. android studio 正式版打包错误的一个问题

    今日在下载了别人的demo后,编译到我的手机上,然后通过qq等把软件发到其他的手机上使用时,无法安装,好像是因为这个是调试版本才安装不上,在网搜了一堆资料怎么建key怎么发布正式的版本,问题现在已解决 ...

  5. Ethical Hacking - GAINING ACCESS(11)

    CLIENT SIDE ATTACKS - Listening for connections 1. Run Metasploit Move the backdoor file to the webs ...

  6. Ethical Hacking - NETWORK PENETRATION TESTING(24)

    Detecting suspicious activities using Wireshark You can use make the MAC address of the router to st ...

  7. 大厂程序员教你如何学习C++(内附学习资料)

    目前准备面试同学都知道,C++是百度和腾讯的主流开发语言,而java是阿里的主流开发语言. 对于初学者来说,也不用纠结究竟学习c++还是java 其实只要好好掌握好一门即可,另一门即可融会贯通 因为我 ...

  8. 题解 CF1385D 【a-Good String】

    题意 定义:字符串s 为一个c-好串(c 为一个字符)时,必须满足: 当\(|s| = 1\) ,\(s = c\) 当\(|s| > 1\), \(s\) 的左半部分为全为 \(c\),右半部 ...

  9. java消除整型数组中重复的元素,排序后输出新数组

    法一: import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(S ...

  10. Python基础点记录2

    ---- PygLatin 1 介绍函数的调用,就是直接函数名 def square(n): squared = n**2 print "%d squared is %d." % ...