gpt4 book ai didi

ios - 如何遵守CBCentralManagerDelegate协议(protocol)?

转载 作者:行者123 更新时间:2023-11-30 12:20:52 26 4
gpt4 key购买 nike

我正在尝试初始化中央管理器实例以创建具有蓝牙连接的应用程序。

这是我的代码的一部分:

class ViewController: UIViewController, CBCentralManagerDelegate {
var myCentralManager = CBCentralManager(delegate: self, queue: nil) //error on this line
func centralManagerDidUpdateState(central: CBCentralManager!) {
}

我收到错误:

"Type 'ViewController -> () -> ViewController!' does not conform to protocol 'CBCentralManagerDelegate'

该协议(protocol)所需的唯一方法是我添加的 centralManagerDidUpdateState() ,那么为什么我会收到错误?

最佳答案

该错误消息有点欺骗性,并让您远离实际问题。问题是您正在初始化程序中访问 self 来获取存储的属性,但您不能这样做。

一种解决方法是简单地声明属性而不对其进行初始化,然后将变量的赋值移动到 View Controller 的初始化程序之类的位置,或者 View Controller 的生命周期方法之一,例如 viewDidLoad。

关于ios - 如何遵守CBCentralManagerDelegate协议(protocol)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44809309/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com