创建一个计时器,指示从今天开始的事件还剩几天



我有一个在Unix时间戳中从服务器检索到的日期,这就是我检索它的方式,它运行良好:

double unixTimeStamp = [[date objectAtIndex:indexPath.row / 2] doubleValue];
NSTimeInterval _interval=unixTimeStamp;
NSDate *dateToFinal = [NSDate dateWithTimeIntervalSince1970:_interval];
NSDateFormatter *_formatter=[[NSDateFormatter alloc]init];
_formatter.dateFormat = @"yyyy-MMMM-dd HH:mm:ss zzz";
[_formatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:[[NSUserDefaults standardUserDefaults] objectForKey:@"timeZone"]] ];
[_formatter setDateFormat:@"dd-MMMM-yyyy"];
dateFinal=[_formatter stringFromDate:dateToFinal];

NSDateFormatter *_formatter2=[[NSDateFormatter alloc]init];
_formatter2.dateFormat = @"yyyy-MMMM-dd HH:mm:ss zzz";
[_formatter2 setTimeZone:[NSTimeZone timeZoneWithAbbreviation:[[NSUserDefaults standardUserDefaults] objectForKey:@"timeZone"]] ];
[_formatter2 setDateFormat:@"HH:mm"];
dateTime =[_formatter2 stringFromDate:dateToFinal];

这个日期加载在一个tableViewCell中,有没有任何方法可以在该自定义单元格中创建一个字段,它会在其中显示事件的剩余日期
示例:
活动日期:2014年4月27日下午7:00,因此此字段应显示:
活动还剩2天2小时

感谢

逻辑获取时间戳(1970年的秒数)并逐步转换。

int timestamp = [[NSDate date] timeIntervalSince1970];
  • 从秒开始,持续1年
  • 如果您的时间戳大于1年时间戳
  • 然后提高年数,然后在带有1年时间戳的时间戳

  • 否则,检查1个月之间的差异,并遵循相同的逻辑

GitHub上有很多库可以做到这一点。

例如:

  • Pretty时间戳

  • SE人性化时差

看看吧!:)

最新更新