2010-11-21 2 views
1

J'ai un TableViewCell personnalisé (sans Interface Builder) lorsque j'utilise le geste de balayage pour déclencher l'affichage de DeleteConfirmationButton, puis le toucher disparaît comme d'habitude.DeleteConfirmationButton ne disparaît pas lors de l'utilisation de TableViewCell personnalisé

Mais quand je mets l'ensemble TableView en mode d'édition avec le bouton d'édition par défaut:

[self.navigationItem setRightBarButtonItem:[self editButtonItem]]; 

puis appuyez sur la DeleteConfirmationButton il ne devient rouge foncé et ne pas dissapears.

Des idées? PS: Est-il possible de ne pas afficher le bouton lors de l'utilisation du geste de balayage (il n'est donc disponible qu'en mode édition)?

EDIT: Pour avoir une idée de ce que je veux dire (je suis seulement en utilisant le bouton Supprimer pour effacer les étoiles)

http://dl.dropbox.com/u/940415/Screenshot%202010.11.21%2016.42.34.png

Répondre

1

Pour supprimer le bouton de suppression, vous pouvez essayer:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath { 

    if (editingStyle == UITableViewCellEditingStyleDelete) { 
     // delete stars 
     [tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade]; 
    } 
} 

La réponse à votre PS est oui. Vous pouvez utiliser quelque chose le long des lignes de:

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath { 
    if (!tableView.editing) { 
     return UITableViewCellEditingStyleNone; 
    } 
    return UITableViewCellEditingStyleDelete; 
} 
+0

le PS fonctionne bien merci :) mais lorsque je tente de recharger la ligne, il suffit de ... dissapears quand je défiler vers le bas puis remonter il apparaît à nouveau – Staeff

+0

aussi le bouton gauche reste vertical et quand je réessaye de supprimer le bouton de suppression est déjà rouge drak ... – Staeff

+0

Il semble étrange que la rangée disparaisse. Accordé je l'ai seulement testé avec l'exemple de modèle de contrôleur de navigation de données de noyau mais cela a fonctionné très bien. Êtes-vous en train de modifier les propriétés utilisées pour trier la liste lors de la réinitialisation des étoiles? Cela pourrait peut-être expliquer l'acte de disparition. –

Questions connexes