Swift中的NSNotificationCenter addObserver
如何在Swift中将观察者添加到默认通知中心?我正在尝试移植此行代码,以便在电池电量变化时发送通知。
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(batteryLevelChanged:) name:UIDeviceBatteryLevelDidChangeNotification object:nil];
回答:
与Objective-C API相同,但是使用Swift的语法。
NotificationCenter.default.addObserver( self,
selector: #selector(self.batteryLevelChanged),
name: UIDevice.batteryLevelDidChangeNotification,
object: nil)
如果您的观察者没有从Objective-C对象继承,则必须@objc
使用方法作为前缀,才能将其用作选择器。
@objc private func batteryLevelChanged(notification: NSNotification){ //do stuff using the userInfo property of the notification object
}
请参阅NSNotificationCenter类参考,与Objective-C
API交互
以上是 Swift中的NSNotificationCenter addObserver 的全部内容, 来源链接: utcz.com/qa/405811.html