使用NSTimer实现倒计时
来源:互联网 发布:淘宝自动发货订单 编辑:程序博客网 时间:2024/06/05 17:08
记得以前在看Iphone31天的时候做过一个,今天翻出来运行不了了,原因是我的 Iphone SDK升级到3.1了,以前使用的是2.2.1,在2.2.1里面是可以使用NSCalendarDate的,但是在3.1里面不能够使用,怎么办,只好 用NSTimer了,最后还是给实现了。代码也比较简单,开始运行viewDidLoad的时候加载 [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(timerFireMethod:) userInfo:nil repeats:YES];//使用timer定时,每秒触发一次
,然后就是写selector了。
- (void)timerFireMethod:(NSTimer*)theTimer
{
//NSDateFormatter *dateformatter = [[[NSDateFormatter alloc]init] autorelease];//定义NSDateFormatter用来显示格式
//[dateformatter setDateFormat:@"yyyy MM dd hh mm ss"];//设定格式
NSCalendar *cal = [NSCalendar currentCalendar];//定义一个NSCalendar对象
NSDateComponents *shibo = [[NSDateComponents alloc] init];//初始化目标时间(好像是世博会的日期)
[shibo setYear:2010];
[shibo setMonth:5];
[shibo setDay:1];
[shibo setHour:8];
[shibo setMinute:0];
[shibo setSecond:0];
NSDate *todate = [cal dateFromComponents:shibo];//把目标时间装载入date
[shibo release];
// NSString *ssss = [dateformatter stringFromDate:dd];
// NSLog([NSString stringWithFormat:@"shibo shi:%@",ssss]);
NSDate *today = [NSDate date];//得到当前时间
// NSString *sss = [dateformatter stringFromDate:today];
// NSLog([NSString stringWithFormat:@"xianzai shi:%@",sss]);
//用来得到具体的时差
unsigned int unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
NSDateComponents *d = [cal components:unitFlags fromDate:today toDate:todate options:0];
lab.text = [NSString stringWithFormat:@"%d年%d月%d日%d时%d分%d秒",[d year],[d month], [d day], [d hour], [d minute], [d second]];
}
这样就实现了倒计时的功能。
,然后就是写selector了。
- (void)timerFireMethod:(NSTimer*)theTimer
{
//NSDateFormatter *dateformatter = [[[NSDateFormatter alloc]init] autorelease];//定义NSDateFormatter用来显示格式
//[dateformatter setDateFormat:@"yyyy MM dd hh mm ss"];//设定格式
NSCalendar *cal = [NSCalendar currentCalendar];//定义一个NSCalendar对象
NSDateComponents *shibo = [[NSDateComponents alloc] init];//初始化目标时间(好像是世博会的日期)
[shibo setYear:2010];
[shibo setMonth:5];
[shibo setDay:1];
[shibo setHour:8];
[shibo setMinute:0];
[shibo setSecond:0];
NSDate *todate = [cal dateFromComponents:shibo];//把目标时间装载入date
[shibo release];
// NSString *ssss = [dateformatter stringFromDate:dd];
// NSLog([NSString stringWithFormat:@"shibo shi:%@",ssss]);
NSDate *today = [NSDate date];//得到当前时间
// NSString *sss = [dateformatter stringFromDate:today];
// NSLog([NSString stringWithFormat:@"xianzai shi:%@",sss]);
//用来得到具体的时差
unsigned int unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
NSDateComponents *d = [cal components:unitFlags fromDate:today toDate:todate options:0];
lab.text = [NSString stringWithFormat:@"%d年%d月%d日%d时%d分%d秒",[d year],[d month], [d day], [d hour], [d minute], [d second]];
}
这样就实现了倒计时的功能。
- 使用NSTimer实现倒计时
- 使用NSTimer实现倒计时
- 使用NSTimer实现倒计时
- 使用NSTimer实现倒计时
- 使用NSTimer实现倒计时
- 使用NSTimer实现倒计时
- iphone--使用NSTimer实现倒计时
- 使用NSTimer和gcb实现倒计时
- iOS NSTimer 实现倒计时
- NStimer 倒计时实现
- NSTimer+倒计时功能实现
- NSTimer+倒计时功能实现
- 使用NSTimer计时器实现简单的按钮倒计时功能
- NSTimer 倒计时
- NSTimer倒计时
- NSTimer实现读秒、倒计时等周期性操作
- NSTimer实现倒计时 及 定时器用法
- 用NSTimer实现倒计时--ios开发
- XMPP 初步认知
- 【多媒体封装格式详解】---MP4【4】
- 2013打算
- 平台rtc驱动最后的疑惑解决driver->probe到平台->probe
- 安装 Twisted for win
- 使用NSTimer实现倒计时
- oracle数据库插入一条记录同时返回该记录的id值
- Windows进程创建的流程分析。
- poj--1088
- IE8下session共享的问题以及相应的解决方案
- SSMS无法连接远程数据库实例的解决办法
- 解决Android4.0 系统设置大号字体后布局错乱的问题
- c++ 0x Lambda :在自己的项目中使用
- 关于*p++和++p*