Très bien, j'ai un comportement étrange et cette question s'adresse aux personnes qui ont déjà eu ce problème.Éviter que UITableViewCell ne bouge lorsque vous basculez entre les modes d'édition
J'ai 4 sous-classes différentes de UITableViewCells. Ils sont tous très similaires (je ne vois pas les différences qui pourraient amener le problème).
Maintenant, mon délégué UITableView ont le code suivant:
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.section < 2)
return UITableViewCellEditingStyleNone;
else if (indexPath.row == [[AccountManager sharedManager].accounts count])
return UITableViewCellEditingStyleNone;
else return UITableViewCellEditingStyleDelete;
}
Maintenant, ce que je pense serait d'avoir les 2 premières lignes ne change pas à changer l'état de setEditing: propriété de mon tableView.
est ici la partie la plus délicate:
les 2 premières lignes se déplacent à droite sans avoir le « supprimer l'icône » apparaît.
Dans la dernière section , les cellules ne se déplacent pas un seul pixel à droite et que les lignes sont d'avoir « Supprimer l'icône » apparaît.
Voici quelques informations:
Aucun de mes cellviews et subviews mettre en œuvre - (void) layoutSubviews
Tous les mettre en œuvre - (void) drawRect: (CGRect) rect
Toutes les cellules et Les sous-vues de la cellule ContentMode sont définies sur leurs paramètres par défaut. Tous les paramètres autoresizingMask sont définis sur leurs paramètres par défaut.
Une idée?
Peu importe, je suis un idiot. J'ajoutais mes sous-vues à la vue de UITableViewCell au lieu de cell.contentView Je vais le garder ici au cas où quelqu'un recevrait cette erreur –
Vous pouvez afficher ceci comme une "réponse" afin que les gens sachent que c'est fermé et vous obtenez des points de réputation pour la sélection c'est la bonne réponse. – iwasrobbed
Je suis d'accord, je vais le faire tout de suite –