gpt4 book ai didi

ios - 将计时器标签格式化为小时 :minutes:seconds in Swift

转载 作者:IT王子 更新时间:2023-10-29 05:08:40 24 4
gpt4 key购买 nike

我有一个 NSTimer,它从 2 小时开始倒计时直到 0。

这是我的一些代码:

var timer = NSTimer()
let timeInterval:NSTimeInterval = 0.5
let timerEnd:NSTimeInterval = 0.0
var timeCount:NSTimeInterval = 7200.0 // seconds or 2 hours

// TimeString Function

func timeString(time:NSTimeInterval) -> String {
let minutes = Int(time) / 60
let seconds = time - Double(minutes) * 60
let secondsFraction = seconds - Double(Int(seconds))
return String(format:"%02i:%02i.%01i",minutes,Int(seconds),Int(secondsFraction * 10.0))
}

定时器标签是:

TimerLabel.text = "Time: \(timeString(timeCount))"

但是,我的计时器标签显示为:

Time: 200:59.0

如何将我的计时器标签格式化为如下所示:

Time: 01:59:59 // (which is hours:minutes:seconds)?

[请注意,我的倒数计时器没有问题,我只需要知道如何使用 TimeString 函数更改时间格式。]

编辑:有人提到我的问题可能与这个问题重复:Swift - iOS - Dates and times in different format .但是,我问的是如何使用上面给出的 TimeString 函数更改时间格式。我不是在寻求另一种方法。

例如:

let minutes = Int(time) / 60

给我“200”分钟。等

最佳答案

你的计算全错了。

let hours = Int(time) / 3600
let minutes = Int(time) / 60 % 60
let seconds = Int(time) % 60
return String(format:"%02i:%02i:%02i", hours, minutes, seconds)

关于ios - 将计时器标签格式化为小时 :minutes:seconds in Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35215694/

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