当我运行我的应用程序时,出现此错误
Nick [66720:3658939]-[_ SwiftValue function1]:无法识别的选择器已发送到实例
我试图离开班级,它说 只有协议成员可以在那里
import Cocoa
class mymainclass: NSObject, NSApplicationDelegate{
var mytimer = Timer.scheduledTimer(timeInterval: 0.2, target: self, selector: #selector(function1), userInfo: nil, repeats: true)
func applicationDockMenu(_ sender: NSApplication) -> NSMenu? {
return dockMenu
}
@objc func function1(){
print(“function1 test”)
}
}
答案 0 :(得分:0)
您正在尝试在类级别使用 self ,这样就不会引用您创建的类实例。
相反,您可以在创建类实例之后创建计时器。 在类构造函数中,自己将指向您期望的内容
class Mymainclass: NSObject, NSApplicationDelegate{
var mytimer: Timer?
override init() {
super.init()
self.mytimer = Timer.scheduledTimer(timeInterval: 0.2, target: self, selector: #selector(function1), userInfo: nil, repeats: true)
}
@objc func function1(){
print("function1 test")
}
}
注意: 类名以大写字母开头