protocol Device {
}
protocol ActiveDevice: Device {
}
protocol NoActive: Device {
}
ViewController:
class ViewController : UIViewController {
let device: Device
}
Настройка устройства для ViewController.currentDevice - это объект, который соответствует протоколу Device
vc.device = currentDevice as! ActiveDevice
Проверка, соответствует ли он протоколу:
if let currentDevice = device as? NoActive {
print("Its not active device")
}else if let currentDevice = device as? ActiveDevice {
print("Its active device")
}else {
print("Its just a device")
}
Он всегда печатает Its not active device
того, что я ожидал бы в этом случае, что оннапечатал бы Its active device