Changer la couleur de défaut de couleur rouge bouton supprimer dans UITableViewCell lorsque le balayage des lignes ou cliquez sur le bouton modifier
J'ai voulu changer la couleur de moins de bouton et le bouton supprimer de UITableViewCell
lors d'un clic sur le bouton modifier, ou de glisser UITableView
lignes. J'ai mis en œuvre ce code pour l'instant :
-(IBAction)doEdit:(id)sender
{
[[self keyWordsTable] setEditing:YES animated:NO];
}
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
if (editingStyle == UITableViewCellEditingStyleDelete) {
}
- vérifiez ceci: stackoverflow.com/questions/1615469/...
- Semble que vous n'avez jamais eu une réponse sur la façon de changer la couleur de la moins réelle bouton, juste la confirmation bouton supprimer.
Vous devez vous connecter pour publier un commentaire.
iOS 8 et 9 (accessoires pour ce post)
Remarque: Si vous travaillez iOS 7 de projet, vous aurez besoin de mettre à jour la cible d'iOS 8 pour obtenir cette fonctionnalité. Aussi n'oubliez pas de régler le UITableviewDelegate.
Toute la magie qui se passe maintenant ici (autant de boutons que vous le souhaitez!!!!):
(iOS 7)
ensemble de personnaliser l'étiquette de texte au lieu de le supprimer.
personnalisé la couleur du bouton de la partie 1 - attention, cette technique consiste à piquer le privé pomme d'API. Cependant, vous n'êtes pas empêché de modification d'une sous-vue à l'aide d'une méthode publique de recherche qui fait partie de UIKIT.
Créer un uitableviewcell classe (voir aussi https://stackoverflow.com/a/22350817/1758337 )
Une autre remarque: il n'y a aucune garantie que cette approche permettra de travailler dans de futures mises à jour. Aussi méfiez-vous que la mention ou à l'aide du privé
UITableViewCellDeleteConfirmationView
classe peut conduire à l'AppStore rejet.personnalisé la couleur du bouton de la partie 2
de retour dans votre uitableviewcontroller
(L'autre couleur ne sera pas appelé jusqu'à la prochaine fois layoutSubviews est appelée sur le tablecell, afin de nous assurer que ce qui se passe en rechargeant tout.)
UITableViewCellDeleteConfirmationView
dans votre code est un moyen sûr d'avoir votre application rejeté.-(NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCell* myCell = [tableView cellForRowAtIndexPath:indexPath]; [myCell setNeedsLayout]; return m_sMyTitle; }
NSObject
pour iOS 8.3: gist.github.com/8e7865f3be439e3b15d7commitEditingStyle
, leUITableViewRowAction
s'gestionnaire est appelé à la placeeditActionsForRowAtIndexPath
n'est pas appelé! iOS 11.3 des idées?Swift Exemple (iOS 8)
UITableViewDelegate docs (editActionsForRowAtIndexPath méthode)
Exemple de travail en Swift:
temps de poing que vous appelez willTransitionToState dans .m (customcell)
Vérifier la version iOS, c'est ici, je suis en utilisant iOS 7 - iOS8
Pas possible à l'aide de l'API publique.
Pour le bouton supprimer, vous pouvez utiliser une implémentation personnalisée, comme SWTableViewCell, pour changer la couleur du bouton, ainsi que d'en ajouter d'autres.
Vieille Question, mais je suis sûr qu'il ya des gens qui prend en charge iOS 7.
Pour changer le bouton supprimer la couleur de fond, vous avez besoin pour créer des "UITableViewCell" de la classe ou de l'étendre.
ensuite, vous pouvez utiliser