Swift 如何在计时器应用程序上设置以秒为单位的延迟?

Swift 如何在计时器应用程序上设置以秒为单位的延迟?,swift,timer,nstimer,Swift,Timer,Nstimer,我正在尝试创建一个时间应用程序,该应用程序的时间有点短,例如我希望应用程序中的一秒实际上是1.5秒的实时时间。目前,我在更改时间标签时遇到错误,不知道从何处开始调整与实时相比所需的时间 func updateCounter() { timeLabel.text = String(counter+=1) } override func viewDidLoad() { super.viewDidLoad() var timer = Timer() var count

我正在尝试创建一个时间应用程序,该应用程序的时间有点短,例如我希望应用程序中的一秒实际上是1.5秒的实时时间。目前,我在更改时间标签时遇到错误,不知道从何处开始调整与实时相比所需的时间

func updateCounter() {
   timeLabel.text = String(counter+=1)
}

override func viewDidLoad()
{
    super.viewDidLoad()

    var timer = Timer()
    var counter = 0
    timeLabel.text = String(counter)
}
我收到以下错误

无法使用类型为“(())”的参数列表调用类型为“String”的初始值设定项


任何帮助都很好。

您必须将变量
计数器设置为全局变量,并在
updateCounter()中的单独一行中递增计数器。


计数器+=1
不返回值,这就是为什么不能作为参数传递给字符串初始值设定项

如何触发
updateCounter()
?另外,
var计数器
不可用于
updateCounter()
,因为它位于
viewdiload()
内。
var aTimer: Timer!
let defaultTimeInterval = 1.5
var counter = 0.0
var adjustedCounter = 0.0
let timeLabel = UILabel()

override func viewDidLoad() {
    super.viewDidLoad()
    aTimer = Timer.scheduledTimer(timeInterval: defaultTimeInterval, target: self, selector: #selector(updateCounter), userInfo: nil, repeats: true)
}

@objc func updateCounter() {
    counter += defaultTimeInterval
    adjustedCounter += 1
    let displayText = "original: \(counter)  adjusted: \(adjustedCounter)"
    timeLabel.text = displayText
    print(displayText)
}
var aTimer: Timer!
let defaultTimeInterval = 1.5
var counter = 0.0
var adjustedCounter = 0.0
let timeLabel = UILabel()

override func viewDidLoad() {
    super.viewDidLoad()
    aTimer = Timer.scheduledTimer(timeInterval: defaultTimeInterval, target: self, selector: #selector(updateCounter), userInfo: nil, repeats: true)
}

@objc func updateCounter() {
    counter += defaultTimeInterval
    adjustedCounter += 1
    let displayText = "original: \(counter)  adjusted: \(adjustedCounter)"
    timeLabel.text = displayText
    print(displayText)
}