UICollectionView didSelectItemAtIndexPath non appelé lorsqu'il est tapé sur UITextView
J'ai un UICollectionView
personnalisée avec des cellules, Ils ont une UITextView
que la plupart des couvre l'ensemble de la cellule. Cela pose un problème lors de l'utilisation de didSelectItemAtIndexPath
. Le seul moyen de le déclencher en appuyant sur l'extérieur de la UITextView
. Je veux le déclenchement d'où que ce soit dans la cellule que vous appuyez sur, si il y a une vue du texte ou pas. Comment cela peut-il être fait?
source d'informationauteur imas145
Vous devez vous connecter pour publier un commentaire.
Je suggère d'utiliser
UIGestureRecognizer
pour chaque cellule et quand il scotché à l'envoyer àUITextView
ou que ce soit , peut-être il y a peut-être une meilleure solution , mais je voudrais utiliser ce 1, en raison de la simplicité des raisons.didSelectItemAtIndexPath
est appelée lorsquenone of the subView of collectionViewCell respond to that touch
. Comme letextView
répondre à ces touches, ilwon't forward those touches
à son superView, donc collectionView ne l'obtiendra pas.remplacer
hitTest:withEvent
méthode de votrecollectionViewCell
ouCollectionView
sous-classe, et toujours de retourself
d'eux.donc explicitement fait collectionView commefirst responder
.Ne vous substituez
touchesEnded: withEvent:
?J'ai eu le même problème aujourd'hui et j'ai trouvé que j'ai quelques personnalisé logique dans
touchesEnded
dans l'un des collectionview du conteneur de points de vue, et je n'ai pas d'appelquand je suis fait avec mon personnalisés logique dans
touchesEnded
.Après l'ajout de la super appel, tout va bien.
J'ai rencontré ce problème quand j'ai eu un défilement de la vue reprenant l'ensemble de ma collection de vue de la cellule. Alors que toutes les solutions ci-dessus probablement bien fonctionner, je suis venu avec mon propre travail élégant. J'ai mis un 'select' étiquette sous mes défilement de la vue. Depuis l'étiquette ne fait pas partie de défilement de la vue, il passe à la appuyez sur un événement pour l'affichage de la collection. Il sert également une belle indicateur qu'une action est requise de l'utilisateur.