Bir test olarak iki çerçeve oluşturdum. Her iki çerçeveler bu uzantıyı içerir:Farklı çerçevelerden uzantı yöntemleri için isim çarpışmaları
public extension UIDevice {
var extraInfo: UIDeviceExtraInfo {
return UIDeviceExtraInfo()
}
}
public class UIDeviceExtraInfo {
public var prop: String = "Device1" //"Device2" is used in another framework
}
Sonra iki çerçeveler ithal ve UIDevice.currentDevice().extraInfo.prop
yazdırmaya çalışırsanız. Swift derleyici hata verir: Ambiguous use of extraInfo"
.
Nasıl böyle bir isim çatışması çözmek için gider?
Esasen burada (cevap olmadan) aynı soru: http://stackoverflow.com/questions/32736698/swift-extension-same-extension-function-in-two-modules. Çözüm olmadığını düşünüyorum. –