2016-08-05 9 views
1

Ich versuche Swift zu lernen. Ich möchte Seitenmenü in Swift machen. Ich würde googeln und ein wenig Code finden. Ich verwende Xcode 7.2 und swift Version 2.1.1?Warum #selector() funktioniert nicht in swift

Fehler werden in dieser folgenden Zeile zeigen: -

self.panRecognizer = UIPanGestureRecognizer(target: self, action: #selector(ENSideMenu.handleGesture(_:)))// (Expected , separator) 

HandleGesture Methode ist: -

internal func handleGesture(gesture: UISwipeGestureRecognizer) { 
    toggleMenu((self.menuPosition == .Right && gesture.direction == .Left) 
      || (self.menuPosition == .Left && gesture.direction == .Right)) 
} 

was soll ich tun?

Vielen Dank im Voraus.

+4

'#selector()' ist in Swift 2.2, nicht wahr? Und du hast gesagt, deine Version war 2.1.1. – Larme

+0

Der erste Grund wird von @Larme angegeben und ein anderer Grund ist, dass Sie Ihre Methode 'internal' definiert haben, die ihren Gültigkeitsbereich innerhalb einer beliebigen Quelldatei von ihrem definierenden Modul abgrenzt. –

+0

danke für die Antwort @Larme. Ich weiß nicht genau, dass #selector mit welcher Version von swift arbeitet. Zur Zeit verwende ich 2.1.1 –

Antwort

1

versuchen mit alter Syntax

self.panRecognizer = UIPanGestureRecognizer(target: self, action: Selector("handleGesture:")) 
+0

Danke für die Antwort @Ozgur Ersil. Ich habe es versucht. aber ich bekomme 'Fehlendes Argument für Parameter-Aktion im Call'. –

+0

Ich habe meine Antwort @Chetan bearbeitet –

Verwandte Themen