Cha*_*Lin 2 cocoa cbperipheral swift
我正在尝试在Swift中构建iBeacon发射器,但我无法让我的班级采用该CBPeripheralManagerDelegate协议。
在Objective-C中,此协议是初始化PeripheralManager对象所必需的,但是在Swift中,我将得到以下错误:
class MyBeacon: CBPeripheralManagerDelegate {
// ...
}
Run Code Online (Sandbox Code Playgroud)
给出错误:
“ MyBeacon”不符合“ CBPeripheralManagerDelegate”
由于我的班级未采用该协议,因此当我尝试使用自动完成初始化PeripheralManager时也出现错误
self.peripheralManager = CBPeripheralManager(delegate: self, queue: queue)
Run Code Online (Sandbox Code Playgroud)
给出错误:
找不到接受提供的参数的'init'的重载
谁能给我一些启示?
您必须实现此方法,因为此方法不是可选的,如果您确认,则必须实现 CBPeripheralManagerDelegate
func peripheralManagerDidUpdateState(_ peripheral: CBPeripheralManager) {
}
Run Code Online (Sandbox Code Playgroud)
在课堂上写这个错误会消失
参考文档
CBPeripheralManagerDelegate协议的委托必须采用CBPeripheralManagerDelegate协议,该协议由许多可选方法和一个必需方法组成。当外围设备管理器的状态更新时,将调用该协议的必需方法,该方法指示外围设备管理器是否可用。
| 归档时间: |
|
| 查看次数: |
1451 次 |
| 最近记录: |