Nach meinem Projekt Swift Umwandlung 3, erhalte ich diese Meldung:mehrdeutige Verwendung von 'Wert'
mehrdeutige Verwendung von 'Wert'
Auf der Linie
let fetcher = wrapper?.value as? Fetcher<UIImage>
Ich versuche, mit NSObject-Instanzen mithilfe von Erweiterungen
public extension UIImageView {
var hnk_fetcher : Fetcher<UIImage>! {
get {
let wrapper = objc_getAssociatedObject(self, &HanekeGlobals.UIKit.SetImageFetcherKey) as? ObjectWrapper
let fetcher = wrapper?.value as? Fetcher<UIImage> //Ambiguous use of 'value'
return fetcher
}
set (fetcher) {
var wrapper : ObjectWrapper?
if let fetcher = fetcher {
wrapper = ObjectWrapper(value: fetcher)
}
objc_setAssociatedObject(self, &HanekeGlobals.UIKit.SetImageFetcherKey, wrapper, objc_AssociationPolicy.OBJC_ASSOCIATION_RETAIN_NONATOMIC)
}
}
zu verknüpfen
Hier ist meine ObjectWrapper-Klasse.
class ObjectWrapper : NSObject {
let value: Any
init(value: Any) {
self.value = value
}
}
Alles war gut vor der Migration des Codes. Was schief gelaufen ist?
Haben Optionale ein 'value' Member? Es ist möglicherweise nicht in der Lage, herauszufinden, ob Sie das Element des optionalen Elements oder das Element des Objekts, das das optionale Wrapping enthält, möchten. – Carcigenicate
@Carcigenicate Es gibt kein 'value' Mitglied – Ana
@Hamish Great! Das Umbenennen der Eigenschaft 'value' hat das Problem behoben. Vielen Dank! – Ana