2009-05-15 5 views

Répondre

3

Je ne sais pas pourquoi vous voulez le faire au lieu d'utiliser le comportement standard supprimer, mais ...

D'abord, vous devez connaître le indexPath pour la cellule sur laquelle ce bouton est pressé. Vous devez donc câbler la cellule personnalisée pour recevoir l'action du bouton, puis appeler la méthode indexPathForCell de la table avec cette cellule pour obtenir l'indexPath.

Une fois que vous l'avez, vous mettez l'indexPath à l'intérieur d'un NSArray et le passez à la méthode deleteRowsAtIndexPaths de la table (et choisissez également le type d'animation pour enlever la cellule). Cela appellera également la méthode commitEditingStyle de dataSource pour vous permettre également de supprimer les données sous-jacentes. Gardez à l'esprit qu'en procédant de cette manière, vous contournerez le processus de suppression en deux étapes intégré à la table, où l'utilisateur demandera normalement une suppression, puis devra le confirmer. Donc, pour des raisons de sécurité, vous voudrez probablement implémenter quelque chose comme ça vous-même. De même, le comportement par défaut pour balayer une cellule de tableau consiste à afficher le bouton de suppression. Vous souhaiterez peut-être remplacer la méthode de délégué editingStyleForRowAtIndexPath et renvoyer UITableViewCellEditingStyleNone pour cette cellule afin qu'il ne fasse pas la chose par défaut.

+0

pourriez-vous s'il vous plaît poster un exemple de code pour cela. je ne comprends toujours pas –

Questions connexes