PickerView计算剩余时间,主要是时间方面的转换
2016-06-03 14:54
417 查看
//计算剩余时间
-(void)getNowTimeDate:(NSString*)dateStr
{
//将传入时间NSString转化成需要的格式
NSDateFormatter
*format=[[NSDateFormatteralloc]init];
[format
setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate
*fromdate=[format
dateFromString:dateStr];
NSTimeZone
*fromzone = [NSTimeZonesystemTimeZone];
NSInteger
frominterval = [fromzone
secondsFromGMTForDate: fromdate];
NSDate
*fromDate = [fromdate
dateByAddingTimeInterval: frominterval];
NSLog(@"fromdate=%@",fromDate);
//获取当前时间
NSDate
*date = [NSDatedate];
NSTimeZone
*zone = [NSTimeZonesystemTimeZone];
NSInteger
interval = [zone
secondsFromGMTForDate: date];
NSDate
*localeDate = [date
dateByAddingTimeInterval: interval];
NSLog(@"enddate=%@",localeDate);
double
intervalTime = [fromDate
timeIntervalSinceReferenceDate] - [localeDatetimeIntervalSinceReferenceDate];
long lTime = (long)intervalTime;
NSInteger
iSeconds = lTime %
60;
NSInteger
iMinutes = (lTime /
60) %60;
NSInteger
iHours = (lTime /
3600)%24;
NSInteger
iDays = lTime/60/60/24;
NSInteger
iMonth = lTime/60/60/24/12;
NSInteger
iYears = lTime/60/60/24/384;
_surplusStr
= [NSStringstringWithFormat:@"%d年%d月%d日%.2d:%.2d:%.2d",iYears,iMonth,iDays,iHours,iMinutes,iSeconds];
}
//PickerView改变时的处理
-(void)dateChange
{
//将NSDate 转化成NSString
NSDate
* selected = [_datePickerdate];
NSDateFormatter
* dateFormatter = [[NSDateFormatteralloc]init];
[dateFormatter
setDateFormat:@"yyyy/MM/dd HH:mm:ss"];
NSString
*destDateString = [dateFormatter
stringFromDate:selected];
_dataStr
= destDateString;
[selfgetNowTimeDate:destDateString];
[_tableViewreloadData];
CGPoint
offset = [_tableViewcontentOffset];
offset.y= offset.y+PikerViewH;
_tableView.contentOffset=
offset;
_tableView.contentSize=
CGSizeMake(SCREEN_W,
offset.y+SCREEN_H);
}
-(void)getNowTimeDate:(NSString*)dateStr
{
//将传入时间NSString转化成需要的格式
NSDateFormatter
*format=[[NSDateFormatteralloc]init];
[format
setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate
*fromdate=[format
dateFromString:dateStr];
NSTimeZone
*fromzone = [NSTimeZonesystemTimeZone];
NSInteger
frominterval = [fromzone
secondsFromGMTForDate: fromdate];
NSDate
*fromDate = [fromdate
dateByAddingTimeInterval: frominterval];
NSLog(@"fromdate=%@",fromDate);
//获取当前时间
NSDate
*date = [NSDatedate];
NSTimeZone
*zone = [NSTimeZonesystemTimeZone];
NSInteger
interval = [zone
secondsFromGMTForDate: date];
NSDate
*localeDate = [date
dateByAddingTimeInterval: interval];
NSLog(@"enddate=%@",localeDate);
double
intervalTime = [fromDate
timeIntervalSinceReferenceDate] - [localeDatetimeIntervalSinceReferenceDate];
long lTime = (long)intervalTime;
NSInteger
iSeconds = lTime %
60;
NSInteger
iMinutes = (lTime /
60) %60;
NSInteger
iHours = (lTime /
3600)%24;
NSInteger
iDays = lTime/60/60/24;
NSInteger
iMonth = lTime/60/60/24/12;
NSInteger
iYears = lTime/60/60/24/384;
_surplusStr
= [NSStringstringWithFormat:@"%d年%d月%d日%.2d:%.2d:%.2d",iYears,iMonth,iDays,iHours,iMinutes,iSeconds];
}
//PickerView改变时的处理
-(void)dateChange
{
//将NSDate 转化成NSString
NSDate
* selected = [_datePickerdate];
NSDateFormatter
* dateFormatter = [[NSDateFormatteralloc]init];
[dateFormatter
setDateFormat:@"yyyy/MM/dd HH:mm:ss"];
NSString
*destDateString = [dateFormatter
stringFromDate:selected];
_dataStr
= destDateString;
[selfgetNowTimeDate:destDateString];
[_tableViewreloadData];
CGPoint
offset = [_tableViewcontentOffset];
offset.y= offset.y+PikerViewH;
_tableView.contentOffset=
offset;
_tableView.contentSize=
CGSizeMake(SCREEN_W,
offset.y+SCREEN_H);
}
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 讲解iOS开发中基本的定位功能实现
- iOS中定位当前位置坐标及转换为火星坐标的方法
- js判断客户端是iOS还是Android等移动终端的方法
- iOS应用开发中AFNetworking库的常用HTTP操作方法小结
- iOS应用中UISearchDisplayController搜索效果的用法
- IOS开发环境windows化攻略
- iOS应用中UITableView左滑自定义选项及批量删除的实现
- iOS中UIAlertView警告框组件的使用教程
- 浅析iOS应用开发中线程间的通信与线程安全问题
- 检测iOS设备是否越狱的方法
- php强大的时间转换函数strtotime
- .net平台推送ios消息的实现方法
- JavaScript时间转换处理函数