2014-09-08 8 views
1

J'ai mis en place une table statique avec un concepteur iOS dans Xamarin Studio. Maintenant, je veux afficher un nouveau contrôleur de vue si un utilisateur tape sur une cellule spécifique.Détection du tap sur statique UITableViewCell dans Xamarin Studio

Comment puis-je détecter le robinet?

j'ai vu les mises en œuvre pour Objective-C qui utilise la méthode didSelectRowAtIndexPath mais que je aussi à mettre en œuvre la source de données ainsi que la méthode GetCell (ou cellForRowAtIndexPath dans le monde Objective-C). Si je fais cela, je dois à nouveau implémenter le contenu de mes cellules statiques dans le code et j'ai des cellules prototypes dynamiques (pas de vue de table statique plus). La raison en est que je dois créer une nouvelle cellule ou en retirer une existante. J'ai déjà défini un identifiant pour chaque cellule. Travailler avec iOS Designer (Interface Builder dans le monde Objective-C) est pour rien si je ne pouvais pas faire cela.

Quelles sont mes options?

Répondre

1

Je pense avoir trouvé le problème. Il est possible d'utiliser RowSelected sans source de données. Je mets en place ma table statique et maintenant ça marche. Il semble que j'ai introduit une erreur dans le concepteur iOS.

0

Ceci est un scénario intéressant. Je n'ai pas mes outils devant moi, mais je suppose que vous pourriez faire quelque chose comme ce qui suit si vos cellules sont vraiment statiques et ne seront pas modifiées (ajoutées ou supprimées):

  1. Sublcass UITableViewCell pour chacune des cellules statiques que vous avez.
  2. Assigner les sous-classes aux cellules prototypes
  3. Dans chacune des sous-classes, créer une instance d'un UITapGesturesRecognizer.
  4. Ajoutez UITapGestureRecognizer à la collection GestureRecognizers.

Encore une fois, non vérifié. Ce serait comment je pourrais essayer.

Questions connexes