Сообщение: "libC++abi.dylib: завершается с необработанным исключением типа NSException (lldb) в моей консоли, когда я нажимаю кнопку в проекте swift xcode
Я получаю это сообщение: "libC++abi.dylib: завершается с необработанным исключением типа NSException (lldb)" в моей консоли всякий раз, когда я нажимаю кнопку в своей программе. Я не уверен, почему это происходит...
Вот мой код для кнопки:
class gameOverScene: SKScene {
override func didMove(to view: SKView) {
let backgroundNode = SKSpriteNode(imageNamed: "background")
backgroundNode.position = CGPoint(x: self.frame.size.width / 2, y: self.frame.size.height / 2)
self.addChild(backgroundNode)
let button = UIButton(type: .system)
button.frame = CGRect(x: 100, y: 100, width: 100, height: 50)
button.backgroundColor = UIColor.red
button.setTitle("New Game", for: .normal)
button.addTarget(self, action: Selector(("action:")), for: UIControlEvents.touchUpInside)
self.view?.addSubview(button)
func action(sender:UIButton!) {
print("button")
}
func buttonAction(sender: UIButton!) {
}
} // end didMove(to view:)
} // end class declaration
1 ответ
Переместите свою функцию обработчика из
func didMove(to:)
сделать его членом классадобавлять
@objc
в объявлении функции вашего обработчика (т.е.@objc func action(sender: UIButton!)
)Затем измените создание селектора на это:
#selector(gameOverScene.action(sender:))