ios - 类型 'ViewController' 没有成员 'btnPressed'

标签 ios swift

我尝试将观察者添加到我的 Swift 3 应用程序,但是当我想设置应该从观察者调用的方法时,我收到以下错误:

Type 'ViewController' has no member 'btnShowMorePressed'

函数 btnShowMorePressed 直接在 addOberservers 函数下声明。

func addObservers(){

    NotificationCenter.default.addObserver(self, selector: #selector(ViewController.btnShowMorePressed(_:)), name: btn1TappedDone, object: nil)
}

func btnShowMorePressed(sender: NSNotification){
    print("btnShowMorePressed was called.")
}

我尝试清理项目(产品 -> 清理),但仍然出现错误。添加观察者我做错了什么?

最佳答案

应该是:

NotificationCenter.default.addObserver(self, selector: #selector(ViewController.btnShowMorePressed), name: btn1TappedDone, object: nil)

是的,它确实为 btnShowMorePressed(sender: NSNotification) 方法识别了正确的 sender

关于ios - 类型 'ViewController' 没有成员 'btnPressed',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40398698/

相关文章:

ios - 看看相机方法?不是 SCNLookAtConstraint

ios - Bundle.main.path(forResource :ofType:inDirectory:) returns nil when directory and filename are correct

ios - 在 Swift 中重写 layout.subviews 的删除控制

swift - 在 Swift 字典扩展中检查 nil 值

ios - 是否应该为每个场景/屏幕创建单独的 ViewController.Swift?

ios - 如何正确设置单元格格式?

iphone - -[CCSprite setTexture :] 断言失败

iphone - tableView 上的绝对定位、 View 层次结构和重绘

ios - Google Place Picker API 查询应用程序范围的地方?

arrays - Swift 按钮数组