【发布时间】:2016-03-24 03:00:36
【问题描述】:
我正在尝试将几个现有的类组合成一个自定义协议,这样我就可以对它们一视同仁了。例如,我想将这两个类组合在一个协议下,如下所示:
protocol CLKComplicationTemplateRingable {
var fillFraction: Float { get set }
}
extension CLKComplicationTemplateCircularSmallRingText: CLKComplicationTemplateRingable {
}
extension CLKComplicationTemplateModularSmallRingText: CLKComplicationTemplateRingable {
}
为什么我这样做,我不能这样做:
if let template as? CLKComplicationTemplateRingable {
print("\(template.fillFraction)")
}
它没有编译,它给出了这个错误:Variable binding in a condition requires an initializer
我的处理方法正确吗?任何建议或帮助将不胜感激!
【问题讨论】:
标签: swift swift2 protocols protocol-extension