繁体   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