J'ai créé un composant UIView, à l'intérieur il a 2 boutons. Lorsqu'un utilisateur touche les boutons, je dois appeler une méthode d'action de ViewController.Comment obtenir une action sur un bouton enfoncé dans un composant à viewcontroller
J'ai essayé de passer un sélecteur, mais il accident:
sur ViewController
component.leftAction = #selector(ViewController.myAction)
func myAction(sender: UIButton!) {
print("tapped!")
}
sur Component.swift
public var leftAction: Selector? {
didSet {
if (leftAction != nil){
self.leftButton.addTarget(self, action: leftAction!, for: .touchUpInside)
}
}
}
Comment puis-je faire?
Quelle version de Swift utilisez-vous? Dans Swift3, la syntaxe du sélecteur a changé. Il doit être '#selector (ViewController.myAction)' –
@ DávidPásztor Quoi qu'il en soit, il se bloque: "sélecteur non reconnu envoyé à l'instance" –
Pourquoi ne pas simplement ajouter "addTarget" au bouton au lieu de le passer par une variable de sélection? – Malik