gpt4 book ai didi

ios - Swift:根据秒数格式化时间字符串

转载 作者:行者123 更新时间:2023-11-28 10:17:28 25 4
gpt4 key购买 nike

我的应用程序中有一个 NSTimer 对象,它以秒为单位计算耗时。

我想在我的应用程序界面中以符合众所周知的标准的方式格式化 UILabel。

示例

00:01 - 一秒

01:00 - 60 秒

01:50:50 - 6650 秒

我想知道如何做到这一点,您是否知道任何基于 Int 秒数创建此类字符串的 pod/库?

很明显,我可以自己想出一个复杂的方法,但由于建议不要重新发明轮子,我更愿意使用一些现成的解决方案。

我没有在 Foundation 库和 HealthKit 中找到任何相关内容

您对如何完成它有什么建议吗?如果你说“自己去写”——没关系。但我想确保我没有遗漏任何简单、直接的解决方案。

提前致谢

最佳答案

(NS)DateComponentsFormatter 可以做到这一点:

func timeStringFor(seconds : Int) -> String
{
let formatter = DateComponentsFormatter()
formatter.allowedUnits = [.second, .minute, .hour]
formatter.zeroFormattingBehavior = .pad
let output = formatter.string(from: TimeInterval(seconds))!
return seconds < 3600 ? output.substring(from: output.range(of: ":")!.upperBound) : output
}

print(timeStringFor(seconds:1)) // 00:01
print(timeStringFor(seconds:60)) // 01:00
print(timeStringFor(seconds:6650)) // 1:50:50

关于ios - Swift:根据秒数格式化时间字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39789194/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com