gpt4 book ai didi

ios - Swift 协议(protocol)委托(delegate)返回 nil

转载 作者:行者123 更新时间:2023-11-28 07:25:00 25 4
gpt4 key购买 nike

我在 didConnect 函数中设置了一个断点来打印出委托(delegate)的值,它以 nil 的形式返回,我不知道为什么

@objc protocol KestrelDeviceConnectDelegate {
func didConnect()
func didDisconnect()
}

@objcMembers
class KestrelDeviceConnect: NSObject{


static let singleton = KestrelDeviceConnect()
public weak var delegate: KestrelDeviceConnectDelegate?

func centralManager(_ central: CBCentralManager, didConnect peripheral: CBPeripheral) {
self.isInitialReading = false
self.kestrelIsConnected = true
kestrelPeripheral.discoverServices(nil)
delegate?.didConnect()

}

}

在目标 VC 中的 viewDidLoad

_kestrelVC = [[KestrelDeviceConnect alloc]init];
[_kestrelVC setDelegate:self];

最佳答案

问题是初始化一个新的 KestrelDeviceConnect 实例,所以 _kestrelVC = [[KestrelDeviceConnect alloc]init]; 起作用的是 _kestrelVC = [KestrelDeviceConnect单例]

关于ios - Swift 协议(protocol)委托(delegate)返回 nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56841181/

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