UIPickView的简单使用
好记性不如烂笔头,勤做笔记。
摘要:
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的简单使用的更多相关文章
- UIPickView的简单介绍
UIPickView的简单介绍 设置UIPickView的时候,我们主要需要设置一下下面的两个属性 UIPickerView *pickView1; pickView1 = [[UIPickerVie ...
- UIPickView 和 UIDatePicker
*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...
- iOS开发——高级UI之OC篇&UIdatePicker&UIPickerView简单使用
UIdatePicker&UIPickerView简单使用 /***************************************************************** ...
- 点菜系统 pickview的简单实用
使用pickview的时候多想想tableview的使用,观察两者的相同之处 pickview的主要用途用于选择地区 生日年月日 和点餐 示例代码 简单的pickview点餐系统// ViewC ...
- UIPickerView的简单使用
UIPickerView是一个选择器它可以生成单列的选择器,也可生成多列的选择器,而且开发者完全可以自定义选择项的外观,因此用法非常灵活,使用也比较简单.下面做了一个关于天气预报的小Demo 用 UI ...
- IOS UIPickView+sqlite 选择中国全部城市案例
1.案例简单介绍 通过读取文件.将中国全部城市写入sqlite数据库中,现通过UIPickView实现中国全部城市的选择,效果图例如以下所看到的 2.城市对象模型 中国全部城市数据请看http://b ...
- 【造轮子】打造一个简单的万能Excel读写工具
大家工作或者平时是不是经常遇到要读写一些简单格式的Excel? shit!~很蛋疼,因为之前吹牛,就搞了个这东西,还算是挺实用,和大家分享下. 厌烦了每次搞简单类型的Excel读写?不怕~来,喜欢流式 ...
- Fabio 安装和简单使用
Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...
- node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理
一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...
随机推荐
- VSCode 配 uni-app
CLI工程 全局安装vue-cli npm install -g @vue/cli 通过cli创建uni-app项目 vue create -p dcloudio/uni-preset-vue uni ...
- 数据可视化之powerBI基础(八)PowerBI的表格,你真的会用吗
https://zhuanlan.zhihu.com/p/64413000 在PowerBI的可视化对象中,还有两个「表格」对象,表格的作用不仅可以在报表提供明细数据,还经常用来测试度量值的返回结果, ...
- unity第一人称如何设置
关系图 红色菱形:脚本 白色矩形:组件 移动代码 //移动代码 public CharacterController controller;//角色控制器 public float speed = 1 ...
- html-webpack-plugin在html中插入数据
html-webpack-plugin在html中插入数据 <!DOCTYPE html> <html> <head> <meta charset=" ...
- 30个Linux Shell脚本经典案例(上)
编写Shell过程中注意事项: 开头加解释器:#!/bin/bash 语法缩进,使用四个空格:多加注释说明. 命名建议规则:变量名大写.局部变量小写,函数名小写,名字体现出实际作用. 默认变量是全局的 ...
- twitch游戏直播(【国外】平台)如何绑定二次验证码_虚拟MFA?
一般点账户名——设置——安全设置中开通虚拟MFA两步验证 具体步骤见链接 twitch游戏直播([国外]平台)如何绑定二次验证码_虚拟MFA? 二次验证码小程序于谷歌身份验证器APP的优势(更多见官网 ...
- Alink漫谈(十三) :在线学习算法FTRL 之 具体实现
Alink漫谈(十三) :在线学习算法FTRL 之 具体实现 目录 Alink漫谈(十三) :在线学习算法FTRL 之 具体实现 0x00 摘要 0x01 回顾 0x02 在线训练 2.1 预置模型 ...
- 前缀和线性基HDU6579
Operation 题解:看到区间最大异或和,首先想到的是线性基: 线性基可以处理的操作是: 在数列末尾插入一个数 查询全局的子集异或最大值 由于线性基的长度很短,因此我们可以将数列所有前缀的线性基保 ...
- springboot(4)Druid作为项目数据源(添加监控)
参考博客:恒宇少年:https://www.jianshu.com/p/e84e2709f383 Druid简介 Druid是一个关系型数据库连接池,它是阿里巴巴的一个开源项目.Druid支持所有JD ...
- 洛谷 P2403 [SDOI2010]所驼门王的宝藏 题解
题目描述 分析 先放一张图便于理解 这一道题如果暴力建图会被卡成\(n^{2}\) 实际上,在我们暴力建图的时候,有很多边都是重复的 假如一行当中有许多横天门的话,我们就不必要把这一行当中的所有点和每 ...