J'écris une application semblable à un piano iPad. J'ai tout d'abord créé les clés par UIButton, tout a bien fonctionné mais quand je veux glisser d'une clé à l'autre je trouve que c'est une action drag-out (du premier bouton) plutôt qu'une action d'abaissement (du second bouton) Je me demandais juste quelqu'un sait des façons de désactiver le glisser de UIbutton ou de toute autre meilleure façon de faire glisser?Ipad app-like aide de piano!
Répondre
Très ancienne question, mais comme je travaille sur ce sujet maintenant ... Quand j'ai commencé à implémenter un clavier de piano, j'ai simplement utilisé une grande image du clavier, et trouvé quelle touche était pressée dans mes contrôleurs touchesBegan
touchesMoved
méthodes. Ensuite, quand je voulais ajouter des effets de presse clés, je pensais que UIButton
s fonctionnerait bien. Malheureusement, j'ai rencontré le même problème que vous: la première touche UIButton
pressée "capture" le toucher, qui n'est alors pas disponible pour les autres touches.
La solution la plus simple, je pense, est de revenir à la méthode originale du contrôleur touchesBegan
, touchesMoved
. Je vais changer tous mes UIButton
s en UIImageView
s, et faire la détection tactile et l'animation de la clé à partir du contrôleur.