簡體   English   中英

使用Swift追蹤經過的時間

[英]Tracking Elapsed Time with Swift

因此,我為一個任務設置了一個倒計時計時器,我想知道是否有一種方法可以存儲已過去的時間,以便可以將其記錄在應用程序中。 因此,例如,您使用倒數計時器使用evertyime時,會將倒計時運行的時間存儲為生存期值。

  • 倒數計時器設定為10分鍾
  • 計時器運行5分鍾30秒,計時器剩余4分30秒。
  • 經過的會話時間(5分鍾30秒)的值存儲在應用程序中,並添加到總計中

如果重復此確切的指令集,則總壽命值將為11分鍾。

如果有人能指出我的資源方向,該資源將解釋如何實現這樣的功能,將不勝感激。

您可以使用多個選項來保留這樣的數字-絕對最簡單,最快捷的選擇就是使用UserDefaults來存儲/檢索數字。 這不是UserDefaults確切用途,但是如果您僅存儲一個TimeInterval則不會造成任何問題。

一個簡單的實現看起來像這樣:

 let interval: TimeInterval = 20 //replace with the time from your countdown timer
 UserDefaults.standard.set(interval, forKey: "totalTimeElapsed")

並且由於您需要將新時間添加到現有的經過時間中,因此您將執行以下操作:

 let newTimeElapsed: TimeInterval = 20 //replace with time from countdown timer
 let totalSoFar = UserDefaults.standard.double(forKey: "totalTimeElapsed") //will be 0 if it doesn't exist
 UserDefaults.standard.set(newTimeElapsed + totalSoFar, forKey: "totalTimeElapsed")

您可以執行此操作的其他標准方式是NSKeyedArchiverCore Data ,盡管Core Data對於保留1個數字可能會大有作為。

暫無
暫無

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

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