调试初始化程序时出现问题?
Problems debugging initializer?
我在以下代码中遇到调试错误:
required init(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
这是我的全部代码:
class ViewController: UIViewController {
required init(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override func viewDidLoad() {
super.viewDidLoad()
var button = UIButton.buttonWithType(.Custom) as UIButton
button.frame = CGRectMake(160, 100, 50, 50)
button.layer.cornerRadius = 0.5 * button.bounds.size.width
button.setImage(UIImage(named:"thumbsUp.png"), forState: .Normal)
button.addTarget(self, action: "thumbsUpButtonPressed", forControlEvents: .TouchUpInside)
view.addSubview(button)
}
func thumbsUpButtonPressed() {
println("thumbs up button pressed")
}
错误说:
Thread 1: EXC_BAD_INSTRUCTION (code=EXC_1386_INVOP, subcode=0x0)
调试器输出如下:
fatal error: init(coder:) has not been implemented: file...hi/ViewController.swift, line 14
我以前遇到过这个错误,但不确定如何修复它。奇怪的是,有一个错误说 You don't have any initializers
让我把它放进去。无论哪种方式(有或没有)都给我一个错误。
如有任何意见和建议,我们将不胜感激。
提前致谢。
在您的代码中,您触发了 "fatalError" 而不是初始化。替换
required init(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
和
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
我在以下代码中遇到调试错误:
required init(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
这是我的全部代码:
class ViewController: UIViewController {
required init(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override func viewDidLoad() {
super.viewDidLoad()
var button = UIButton.buttonWithType(.Custom) as UIButton
button.frame = CGRectMake(160, 100, 50, 50)
button.layer.cornerRadius = 0.5 * button.bounds.size.width
button.setImage(UIImage(named:"thumbsUp.png"), forState: .Normal)
button.addTarget(self, action: "thumbsUpButtonPressed", forControlEvents: .TouchUpInside)
view.addSubview(button)
}
func thumbsUpButtonPressed() {
println("thumbs up button pressed")
}
错误说:
Thread 1: EXC_BAD_INSTRUCTION (code=EXC_1386_INVOP, subcode=0x0)
调试器输出如下:
fatal error: init(coder:) has not been implemented: file...hi/ViewController.swift, line 14
我以前遇到过这个错误,但不确定如何修复它。奇怪的是,有一个错误说 You don't have any initializers
让我把它放进去。无论哪种方式(有或没有)都给我一个错误。
如有任何意见和建议,我们将不胜感激。
提前致谢。
在您的代码中,您触发了 "fatalError" 而不是初始化。替换
required init(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
和
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}