2017-06-20 3 views
-1

nicht aufrufen Ich bekomme Fehler kann Wert von nicht Funktionstyp nicht aufrufen. Was ist daran falsch?Kann Wert von nicht Funktionstyp

extension FileModel { 
    var isPlayableMedia: Bool { 
     get { 
      return isPlayableMedia(mediaType: mediaType) 
     } 
    } 

    func isPlayableMedia(_ mediaType: MediaType) -> Bool { 
     return mediaType == MediaType.image || mediaType == MediaType.video 
    } 
} 
+0

In Swift Variablen und Funktionen aufrufen entfernen können nicht denselben Namen haben, die Änderung eines von ihnen wird Arbeit (es war möglich in Objective-C, aber nicht mehr in Swift): https://stackoverflow.com/questions/29016524/swift-variable-with-same-as-a-method-name –

Antwort

0

Entweder das Label Parameter entfernen, wenn die Methode

var isPlayableMedia: Bool { 
    return isPlayableMedia(mediaType) // assuming `mediaType` is declared somewhere else. 
} 

genannt wird oder das Etikett Parameter in der Deklaration angeben (Entfernen Sie den Unterstrich)

func isPlayableMedia(mediaType: MediaType) -> Bool { 
    return mediaType == MediaType.image || mediaType == MediaType.video 
} 
0

Es gibt nicht viel nur überprüfen Sie Ihre Funktion Unterschrift und benutze es richtig.

ersetzen Ihre var mit dem folgenden Code:

var isPlayableMedia: Bool { 
    get { 
     return isPlayableMedia(mediaType) 
    } 
} 

OR nur das Argument Label von Ihnen Methode

Verwandte Themen