Я реализую протокол HasDelegate
для IWDeviceManager
.
Во всех прочитанных мною постах никто не написал getter & setter для этого свойства public var delegate
.
Компилятор явно просит меня написать getter & setter для public var delegate
.Почему это требуется в моем случае?
Я пытался писать, но мой код зависает при попытке получить или установить делегата.
Как мне решить эту проблему?
Iподелились кодом ниже
extension IWDeviceManager: HasDelegate {
public typealias Delegate = IWDeviceManagerDelegate
// Compiler explicitly asks to write getter and setter for this.
public var delegate: IWDeviceManagerDelegate? {
get { // Crashes here
return IWDeviceManager.shared()?.delegate
}
set(newValue) { // crashes here
IWDeviceManager.shared()?.delegate = newValue
}
}
}
Ниже приведен интерфейс для IWDeviceManager
open class IWDeviceManager : NSObject {
weak open var delegate: IWDeviceManagerDelegate!
open class func shared() -> Self!
open func initMgr()
open func initMgr(with config: IWDeviceManagerConfig!)
}