swift_将UIDatePicker到达的传播之间的时间差在数小时出现页面的事
今天,写swift demo当它来到了一个非常精彩的问题,我再次 present 使用页面出来 UIDatePicker 选择时间,然后再回到原来的主界面的时间,结果出现的问题:B页面的正常时间,传回A页面后时间少了8个小时。百思不得其解。Google找了一些答案说是要这样:
time.timeZone = NSTimeZone.systemTimeZone()
time.calendar = NSCalendar(calendarIdentifier: NSGregorianCalendar)
加了之后也没有什么作用,还是一样相差8小时。后来有找到第二种解决的方法这样:
let timeZone = NSTimeZone.systemTimeZone()
let seconds = timeZone.secondsFromGMTForDate(addObject.time.date)
let correctDate = addObject.time.date.dateByAddingTimeInterval(Double(seconds))
尽管说问题攻克了,可是还是有点不明确为什么会出现这种情况,难道是 XCode GM版的原因(不太可能啊~)。
希望知道啥原因的童鞋指教,共同进步!
//------------2014.09.20 改动--------------------
今天装了XCode 6.0.1正式版,从B页面传datePicker.date 到 A页面已经不会出现少了8个小时的问题了。可是打印出来的时间却是和debug看到的时间不一样,一样相隔8个小时,debug 看到的是 CST时间。而打印出来时间可能是不是CST时间,应该是时区问题造成的,眼下还不知道怎样让打印出来的时间跟系统显示的时间相一致。
參考资料:IOS-NSDate 差异8小时
版权声明:本文博客原创文章,博客,未经同意,不得转载。
swift_将UIDatePicker到达的传播之间的时间差在数小时出现页面的事的更多相关文章
- Java 中如何计算两个字符串时间之间的时间差?(单位为分钟)
Java 中如何计算两个字符串时间之间的时间差?(单位为分钟) import java.text.DateFormat; import java.text.ParseException; import ...
- 程序员之---C语言细节20(符号和有符号之间转换、两数相加溢出后数值计算)
主要内容:无符号和有符号之间转换.两数相加溢出后数值计算 #include <stdio.h> /* 这个函数存在潜在漏洞 */ float sum_elements(float a[], ...
- C#声明一个100大小的数组 随机生成1-100之间不重复的数
面试题:C#声明一个100大小的数组 随机生成1-100之间不重复的数下面是C#的实现方式,编译测试通过 public static void InsertRandomArray() { int[] ...
- 寻找并输出11~999之间的回文数m
寻找并输出11~999之间的数m,它满足m.m2和m3均为回文数. 回文:各位数字左右对称的整数. 例如:11满足上述条件 112=121,113=1331 判断一个数是否是回文数的方法:求该数的反序 ...
- sessionStorage 的数据会在同一网站的多个标签页之间共享吗?这取决于标签页如何打开
一直以来,我所以为的 sessionStorage 的生命周期是这样的:在 sessionStorage 中存储的数据会在当前浏览器的同一网站的多个标签页中共享,并在此网站的最后一个标签页被关闭后清除 ...
- 计算两个日期之间相差的年数月数天数(JS实现)
前言 如何计算年龄?我的第一直觉做法:(当前时间戳 - 出生时的时间戳)/ (365*86400) 所得结果向下取整.后来发现这种做法获得的结果不准确,不是多了一岁就是少了一岁,不能简单粗暴的这么处 ...
- js用ajax和jison在不同页面的php和html之间互相传值的方法
<script> ;//这个id必须有,如果是空值,无法实现交互.有点郁闷.... var json; $.ajax({ url:"../member/wenzhanglishi ...
- php获取两个时间戳之间相隔多少天多少小时多少分多少秒
/** * 返回两个时间的相距时间,*年*月*日*时*分*秒 * @param int $one_time 时间一 * @param int $two_time 时间二 * @param int $r ...
- js 获取两个时间戳之间相隔多少天多少小时多少分多少秒
<script> function getRemainderTime (startTime){ var s1 = new Date(startTime.replace(/-/g, &quo ...
随机推荐
- LGPL与闭源程序
最近一直在学习 Qt.Qt 有两个许可证:LGPL 和商业协议.这两个协议在现在的 Qt 版本中的代码是完全一致的(潜在含义是,Qt 的早期版本,商业版的 Qt 通常包含有一些开源版本所没有的库,比如 ...
- 基于Sql Server 2008的分布式数据库的实践(二)
原文 基于Sql Server 2008的分布式数据库的实践(二) 从Win7连接Win2003的Sql Server 2008 1.新建链接服务器链接到Win2003的Sql Server 2008 ...
- python模块 mysql-python安装(在ubuntu系统下)
直接运行如下命令 sudo pip install MySQL-python 报如下错误 xxx@ubuntu:~$ sudo pip install MySQL-python Downloading ...
- 2-SAT 及 一点习题
今天简单学习了一下2-SAT.现在简单地总结一下.至于定义之类的就不写了,这里就写写做法,以防以后忘记. 构图 每个值a,拆为两个点,一个表示a,一个表示^a(非a).每个点我们可以看成是一个命题(这 ...
- Office 365 - SharePoint 2013 Online之加入App开发工具Napa
1.新建一个站点集,模板选择开发者模板.例如以下图: 2.确定以后,须要稍等一会儿; 3.点击站点内容,加入app,例如以下图: 4.进入SharePoint Store.选择Napa.例如以下图: ...
- Inter IPP 跟 Microsoft V100编译器区别
最近做项目用了两个编译器,由于是一种精度的算法计算,对计算的精度要求非常高,同时都用的float型,发现inter的结果比vs的结果好许多.但是不知道是什么原因,最后测试发现,是两个编译器的问题. ...
- Mysql事务,并发问题,锁机制-- 幻读、不可重复读(转)
1.什么是事务 事务是一条或多条数据库操作语句的组合,具备ACID,4个特点. 原子性:要不全部成功,要不全部撤销 隔离性:事务之间相互独立,互不干扰 一致性:数据库正确地改变状态后,数据库的一致性约 ...
- 基于visual Studio2013解决算法导论之009快速排序随机版本
题目 快速排序随机版本 解决代码及点评 #include <stdio.h> #include <stdlib.h> #include <malloc.h> ...
- 基于visual Studio2013解决C语言竞赛题之0810链表去重
题目
- CString Format 乱码问题
CString m_buf;CStatic *m_static;char *szName;...m_buf.Format(":%s",szName);m_static->Se ...