2016-03-31 10 views
1

Ich habe ein Problem mit dem Erstellen neuer UIMenuItem und das Zuweisen eines Selektors. Problem ist, dass es seinen Selektor automatisch aufruft, ohne darauf zu tippen. Dies ist mein Code:UIMenuItem deaktiviert automatischen Selektor auf Methode

let customMenuItem1 = UIMenuItem(title: "Salvează", action: Selector(showNote())) 
    menuController.menuItems = NSArray(array: [customMenuItem1]) as? [UIMenuItem] 

Dies ist das Verfahren zum Auftreten von menuitem:

override func canPerformAction(action: Selector,withSender sender: AnyObject?) -> Bool 
{ 
    if action == Selector(showNote()) 
    { 
     return super.canPerformAction(action, withSender: sender) 
    } 

    return false 

} 

Dank alle.

Antwort

1

In ersten 2 Codezeile existieren Fehler in swift:

let customMenuItem1 = UIMenuItem(title: "Salvează", action: Selector(showNote())) 
menuController.menuItems = NSArray(array: [customMenuItem1]) as? [UIMenuItem] 

zu hören haben wir Selector auf Verfahren bedeuten diese Selector wird er aumatically Methode für Benutzer warten aufrufen, ohne zu klopfen und zur Lösung dieses Problems nur wir können so setzen

let customMenuItem1 = UIMenuItem(title: "Salvează", action: #selector(RulesDetailViewController.showNote)) 
    menuController.menuItems = NSArray(array: [customMenuItem1]) as? [UIMenuItem] 

weil #selector diese Parameter auf Berührung und Ereignis für Benutzer warten.