Je veux gérer un événement survient lorsque UIBUTTON STRUT> TOUCH est terminé. Je sais que Uicontrol a quelques événements implémenté des touches (UicontroleventTouchdown, UicontroleventTouchcancel, etc.). Mais je ne peux pas attraper aucun d'entre eux sauf Mon bouton est une sous-vision de certains UIView. Cet UIView a Qu'est-ce qui ne va pas? P>
6 Réponses :
Vous pouvez définir des cibles d'action pour votre bouton en fonction des contrôles code> code> exemple: p>
Oh, ça marche très bien. Mon inattention a joué une blague cruelle avec moi. Merci
Merci . Cela marche. Mais le problème vient si l'utilisateur traîne lors de la touche. TouchupInside ne s'appelle pas lors de cette tympon :(
Vous devez créer votre propre classe personnalisée qui étend uibutton code>.
Votre fichier d'en-tête doit ressembler à ceci.
@interface customButton : UIButton
{
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;
Malheureusement, mon programmeur principal a interdit de créer une nouvelle classe. Mais cette solution fonctionne également correctement
Je pense qu'il est plus facile
Il suffit d'ajouter Iboutlets pour Uibutton avec des événements Touchdown: Code> et une action principale
déclenché: code>
@ Ramshad's accepté Répondre dans exemple: p>
let btn = UIButton(...)
btn.addTarget(self, action: #selector(MyView.onTap(_:)), for: .touchUpInside)
func onTap(_ sender: AnyObject) -> Void {
}