iOS获取当天0点

  最近一个公司一个项目里有个坑,显示不了0点的数据,修改起始时间为前一天23点59分59秒则可以显示。

  查看了获取当天0点代码,和网上查到的结果基本一致,如下所示(使用Category On NSDate):

1 - (NSDate *)zeroOfDate
2 {
3     NSCalendar *calendar = [NSCalendar currentCalendar];
4     NSDateComponents *components = [calendar components:NSUIntegerMax fromDate:self];
5     components.hour = 0;
6     components.minute = 0;
7     components.second = 0;
8     return [calendar dateFromComponents:components];
9 }

  加上Log发现return的date NSTimeInterval的小数点后的值不为0,因为nanosecond不为0,而iOS里又不能使用components.nanosecond = 0,于是用以下办法解决:

 1 - (NSDate *)zeroOfDate
 2 {
 3     NSCalendar *calendar = [NSCalendar currentCalendar];
 4     NSDateComponents *components = [calendar components:NSUIntegerMax fromDate:self];
 5     components.hour = 0;
 6     components.minute = 0;
 7     components.second = 0;
 8
 9     // components.nanosecond = 0 not available in iOS
10     NSTimeInterval ts = (double)(int)[[calendar dateFromComponents:components] timeIntervalSince1970];
11     return [NSDate dateWithTimeIntervalSince1970:ts];
12 }

  做个标记,以防以后被坑。

iOS获取当天0点

时间: 2024-11-07 12:19:56

iOS获取当天0点的相关文章

快速获取当天0点0分0秒(00:00:00)

// 获取当天凌晨0点0分0秒Date Calendar calendar1 = Calendar.getInstance(); calendar1.set(calendar1.get(Calendar.YEAR), calendar1.get(Calendar.MONTH), calendar1.get(Calendar.DAY_OF_MONTH), 0, 0, 0); Date beginOfDate = calendar1.getTime(); System.out.println(beg

检测SDWebImage有没有缓存图片 IOS 获取网络图片大小

NSURL *url = [NSURL URLWithString:[model.content objectForKey:@"image"]];             //请求网络地址数据的同步方法             //因为这个方法在子线程(全局队列)中执行,所以不需要考虑死线程的问题             SDWebImageManager *manager = [SDWebImageManager sharedManager];              [manag

iOS获取本地视频和网络URL视频的缩略图方法

iOS获取本地视频和网络URL视频的缩略图方法 字数222 阅读612 评论0 喜欢13 首先大家先添加AVFoundation和CoreMedia.framework两个框架 第一种本地视频获取缩略图 NSString *path = @"www.51ios.net/本地路径" MPMoviePlayerController *51iosMPMovie = [[MPMoviePlayerController alloc] initWithContentURL:[NSURL fileU

ios 获取屏幕的属性和宽度

1.app尺寸,去掉状态栏 CGRect r = [ UIScreen mainScreen ].applicationFrame; r=0,20,320,460 另外:self.view.bounds.size 2.屏幕尺寸 CGRect rx = [ UIScreen mainScreen ].bounds; r=0,0,320,480 3.状态栏尺寸 CGRect rect; rect = [[UIApplication sharedApplication] statusBarFrame]

iOS 应用2.0版怎么做(转)

移动互联网如火如荼,iOS 应用+ Android 应用+ 手机站似乎成了所有互联网公司的标配,你的网站要是还没有个iOS 应用,似乎都不好意思跟人打招呼.iOS 应用诞生毕竟才只有不到5年的时间,各个方面还都处在起步阶段.不管是出于团队缺乏经验,还是那个“唯快不破”的铁律,往往这些iOS 应用的第一个版本都比较简陋,尤其在技术架构上.这篇文章,我想跟大家探讨的就是这个问题,当你的iOS应用已经有一个版本在线的情况下,如何去构建一款可以支持高效迭代,快速响应的2.0版.首先,应用的架构要层次清晰

ShareSDK for iOS 2.9.0已经发布

ShareSDK for iOS v2.9.0已经发布,本次更新内容包括: 1.修复Facebook获取用户信息报错问题 2.修复Instagram在iPad上显示分享菜单错误问题,需要指定菜单容器. 3.修复人人网分享不能在手机客户端显示问题. 4.增加明道.Line.WhatsApp平台分享. 5.修复iPhone越狱设备安装handyPhone插件时崩溃问题. 新版本SDK下载地址: http://sharesdk.cn/Download/ Wiki已经完成更新,地址为: http://w

ios 获取当前视图第一响应者

Football on Table 题意:一些杆上有人,人有一个宽度,然后现在有一个球射过去,要求出球不会碰到任何人的概率 思路:计算出每根杆的概率,之后累乘,计算杆的概率的时候,可以先把每块人的区间长度再移动过程中会覆盖多少长度累加出来,然后(1?总和/可移动距离)就是不会碰到的概率 代码: #include <stdio.h> #include <string.h> #include <math.h> const double eps = 1e-8; int t,

iOS获取app图标和启动图片名字(AppIcon and LaunchImage&#39;s name)

在某种场景下,可能我们需要获取app的图标名称和启动图片的名称.比如说app在前台时,收到了远程通知但是通知栏是不会有通知提醒的,这时我想做个模拟通知提示,需要用到icon名称:再比如在加载某个控制器时,想设置该控制器的背景图片为启动图片,需要用到启动图片名称. 而事实上icon图片放在系统AppIcon文件夹里,启动图片放在系统LaunchImage文件夹里,取这些图片的名称和其他一般资源图片名称不一样. 为了方便举例子,咱们先简单粗暴点 假设当前项目只支持iPhone设备,并且只支持竖屏:而

iOS获取设备型号、装置类型等信息

iOS获取设备型号.设备类型等信息 设备标识 关于设备标识,历史上盛行过很多英雄,比如UDID.Mac地址.OpenUDID等,然而他们都陆陆续续倒在了苹果的门下.苹果目前提供了2个方法供App获取设备标识:idfa和idfv idfa:全称advertisingIdentifier,官方解释是广告标识,适用于广告推广,这个建议不要轻易使用,如果用了,则App里必须提供广告功能,否则很有可能会在AppStore审核时被拒.而且idfa是可以被用户关闭的(设置->隐私),一旦被关闭,就获取不到了.