簡體   English   中英

創建一個計時器,以指示從今天開始剩余活動的天數

[英]create a timer that would indicate days left to event starting today

我有一個從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 pm,因此此字段應顯示:
活動還剩2天2小時。

謝謝

邏輯是獲取時間戳(從1970年開始,以秒為單位),並逐步進行轉換。

int timestamp = [[NSDate date] timeIntervalSince1970];
  • 從1秒開始
  • 如果您的時間戳大於1年時間戳
  • 然后提高nr年,然后使時間戳與1年時間戳之間的差

  • 否則檢查1個月之間的差異並遵循相同的邏輯

GitHub上有很多庫可以做到這一點。

例如:

去看一下! :)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM