UIButton click crashing没有实现methodSignatureForSelector: - 提前遇到问题无法识别的选择器

Rei*_*ica 4 ios swift

在按下按钮的Swift中,应用程序崩溃并出错

没有实现methodSignatureForSelector: - 麻烦提前无法识别的选择器

在代码中,我的Controller类获取对UIButton的引用,并添加如下所示的目标

aButton.addTarget(self, action: "pressed:", forControlEvents: UIControlEvents.TouchUpInside)
Run Code Online (Sandbox Code Playgroud)

按下的功能定义为

func pressed(sender:UIButton)
{
   println("button pressed")
}
Run Code Online (Sandbox Code Playgroud)

控制器类定义为

class MyController
{
 init()
{
}
// Also here it gets the reference to the UIButton and has pressed function as well.
}
Run Code Online (Sandbox Code Playgroud)

Rei*_*ica 12

我发现的问题是MyController类需要从NSObject类继承.将类声明更改为以下修复了我的问题.

class MyController : NSObject
{
    override init() // since it is overriding the NSObject init
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

这可能是因为NSObject实现了类似的方法respondsToSelector.在调用pressed:函数之前,它会尝试检查它是否实现了按下的选择器:但由于MyController也没有respondsToSelector,所以它崩溃了.