gpt4 book ai didi

swift - 线程 1 : signal SIGABRT, 无法识别的选择器发送到实例

转载 作者:行者123 更新时间:2023-11-28 07:19:21 24 4
gpt4 key购买 nike

我正在尝试在 xcode 中构建一个倒数计时器,但由于某种原因它不起作用。

各种方法都试过了,还是报错。

import Foundation
import UIKit

class SecondViewController: UIViewController {

// text field counter
var count:Int = 300

@IBOutlet weak var counter: UILabel!
let timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(countDown), userInfo: nil, repeats: true)


override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view
}
@objc func countDown(){
counter.text = String(count)
count -= 1


}


}

这是我得到的错误:

-[__SwiftValue countDown]: unrecognized selector sent to instance 0x6000025dde00

最佳答案

您在实例成员的初始化中传递了一个实例方法,而没有使用 lazy 计算初始化,因此不能保证您将获得完全初始化的实例以绑定(bind)其方法。安排 timer 如下,

class SecondViewController: UIViewController {

// text field counter
var count:Int = 300

@IBOutlet weak var counter: UILabel!
var timer: Timer?

override func viewDidLoad() {
super.viewDidLoad()

self.timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(countDown), userInfo: nil, repeats: true)
}

@objc func countDown(){
counter.text = String(count)
count -= 1
}
}

关于swift - 线程 1 : signal SIGABRT, 无法识别的选择器发送到实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58579574/

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