iOS 倒计时及获取本时区时间
倒计时
在viewDidLoad里写个定时器
[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(timerFireMethod:) userInfo:nil repeats:YES];
然后声明定时器的方法
-(void)timerFireMethod:(NSTimer*)theTimer
{
//定义一个NSCalendar对象
NSCalendar *cal = [NSCalendar currentCalendar];
//初始化目标时间
NSDateComponents *shibo = [[NSDateComponents alloc] init]; [shibo setYear:2014];
[shibo setMonth:12];
[shibo setDay:21];
[shibo setHour:16];
[shibo setMinute:30];
[shibo setSecond:0];
//把目标时间装载入date
NSDate *todate = [cal dateFromComponents:shibo];
//得到当前时间
NSDate *today = [NSDate date];
//用来得到具体的时差
unsigned int unitFlags = NSYearCalendarUnit |NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit |NSMinuteCalendarUnit | NSSecondCalendarUnit;
NSDateComponents *d = [cal components:unitFlags fromDate:today toDate:todate options:0];
lab是全局变量
lab.text = [NSString stringWithFormat:@"%d年%d月%d日%d时%d分%d秒",[d year],[d month], [d day],[d hour], [d minute], [d second]];
}
获取本时区的时间
//该方法获取的时间并不是本地时间,而是GMT时间
NSDate *GMTDate = [NSDate date];
NSLog(@"currentDate %@",GMTDate);// currentDate 2014-12-04 05:49:57 +0000
//本地时间
NSTimeZone *timeZone = [NSTimeZone systemTimeZone];
NSInteger interval = [timeZone secondsFromGMT];
NSDate *localeDate = [GMTDate dateByAddingTimeInterval:interval];
NSLog(@"localeDate %@",localeDate);
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。