J'ai une cellule de vue de table personnalisée et j'ai fait une classe personnalisée. Comment puis-je faire référence au contrôleur d'affichage de la table de la cellule?
J'ai cette classe de cellules de TableView personnalisée. Dans cela, j'ai un bouton qui est connecté avec un événement TAP. Sur Tap, j'obtiens l'événement bien, mais je cherche à faire la main sur le contrôleur de la table de la table afin que je puisse montrer la feuille d'action sur la vue de la table. P>
3 Réponses :
La façon dont je ferais cela serait d'utiliser un gestionnaire d'événements de bloc. Dans votre et dans le fichier de mise en œuvre, vous pouvez le faire: p> et enfin dans votre classe de contrôleur, faites quelque chose comme celui-ci dans votre mpurchasedCartitemCell code> ajoutez une propriété dans le fichier d'en-tête, comme: CellfrowrotindexPath: code>: p>
Alors que le Bouddha avertit Siddhartha, veillez à être trop intelligent. Utilisation de la cible-action est un moyen plus simple de faire la même chose.
J'ai fait quelque chose de très similaire qui obtient la référence de la table d'une cellule personnalisée à l'aide d'un événement de bouton.
code: p>
Il est dangereux d'utiliser superview code> pour faire référence à la vue Table de l'une de ses cellules car les détails de la hiérarchie de vue sont privés et pourraient changer dans une version différente de iOS, qui enfreindrait votre code. En outre, @encoreptl demande comment obtenir le contrôleur de vue de la table, pas la vue Table.
Vous pouvez également envisager d'ajouter un Pour ce faire, ajoutez la ligne suivante au fichier d'en-tête de votre classe de cellules personnalisée: p> Si vous créez le bouton du constructeur d'interface. Si vous créez le bouton dans le code, vous ajouteriez cette ligne à la place: p> puis, lors de l'initialisation ou de la configuration de la cellule à partir de votre contrôleur de vue table, vous avez maintenant Une référence à puis, dans la méthode d'action, vous pouvez obtenir la cellule du bouton. La réponse à Objective-C: Comment générer Une nsinteger unique de deux nsintegers? explique comment. p> p> @property code> pour le bouton de la cellule personnalisée. mybutton code> et peut y ajouter une action avec votre contrôleur de vue de table comme cible. p>
Vous devrez donner plus de données, même le code. Qu'essayez-vous de faire? Qu'avez-vous fait? Qu'entendez-vous par le pointeur? Pour qu'est-ce que vous avez besoin d'un pointeur?
J'ai ajouté du code et j'ai mis à jour ma question. Merci. Fondamentalement, je souhaite avoir accès au contrôleur de vue de la table afin que je puisse montrer une feuille d'action car j'ai un bouton à l'intérieur de la cellule de vue de la table.
La cible du bouton doit être réglée sur le contrôleur, que vous avez configurée en vous passant comme argument cible dans AddTatrage: Action: Forcontrolvents:
Ok je pensais s'il y a un moyen d'accéder au contrôleur d'affichage de la table dans la cellule, je pouvais simplement appeler cette action de la cellule de table
Il serait beaucoup plus facile de présenter la feuille d'action du cadre du bouton.
wy ne peut pas définir le délégué à tableView lorsqu'il est tapé sur la cellule, il appelle une méthode de déléguée pour votre contrôleur TableView CALSSS