gpt4 book ai didi

swift - 如何在倒计时开始时不断减少一个值?

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

我想将一些内容与此代码合并。我的目标是在标签中添加一个价格值,该价格值在倒计时开始时每秒不断减少。例如:第一秒的 CurrentPrice - DiscountPerSecond,然后第二秒的 CurrentPrice - DiscountPerSecond*2 等等......直到倒计时完成。

var timerCounter:NSTimeInterval!

func updateTime(interval: NSTimeInterval) -> String {

let interval = Int(interval)

let seconds = interval % 60

let minutes = (interval / 60) % 60

let hours = interval / 3600


return String(format: "%02d:%02d:%02d", hours, minutes, seconds)

}




func startTimer(hour:Int) {
timerCounter = NSTimeInterval(hour * 60 * 60)
let aSelector : Selector = "onTimer:"
NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: aSelector, userInfo: nil, repeats: true)


}


func onTimer(timer:NSTimer!) {
countdownShow.text = updateTime(timerCounter)
timerCounter!--

if (timerCounter == 0) {
timer.invalidate()
countdownShow.text = "Event Closed!"
}
}

最佳答案

一些注意事项:

  1. 您应该存储固定的结束日期并根据需要从当前时间计算时间间隔,而不是从时间间隔倒计时。
  2. 您应根据最大折扣除以剩余时间比例来计算折扣。 (即 price = listPrice - (maximumDiscount *ratioOfTimeElapsed))
  3. 您应该使用NSDateComponentsFormatter设置剩余时间的格式。

关于swift - 如何在倒计时开始时不断减少一个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32120003/

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