ios – NSNotificationCenter addObserver在Swift中调用私有方法

前端之家收集整理的这篇文章主要介绍了ios – NSNotificationCenter addObserver在Swift中调用私有方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_502_0@
我使用addObserver API接收通知
NSNotificationCenter.defaultCenter().addObserver(self,selector: "methodOFReceivedNotication:",name:"NotificationIdentifier",object: nil)

我的方法是:

func methodOFReceivedNotication(notification: NSNotification){
//Action take on Notification
}

是的,它的作品!
但是当我将方法methodOFReceivedNotication更改为private时:

private func methodOFReceivedNotication(notification: NSNotification){
//Action take on Notification
}

xCode向我发送错误:无法识别的选择器发送到实例

当目标是自我时,如何调用私有方法?我不想将methodOFReceivedNotication方法暴露给任何其他方法.

解决方法

只需使用动态修饰符标记它,或在方法声明中使用@objc属性
dynamic private func methodOFReceivedNotication(notification: NSNotification){
    //Action take on Notification
}

要么

@objc private func methodOFReceivedNotication(notification: NSNotification){
    //Action take on Notification
}

猜你在找的iOS相关文章