J'ai une vue de table groupée où je veux recharger une rangée particulière. Lorsque j'appelle ReloadrowowsAindexpaths: la ligne disparaît complètement de la vue de la table. Y a-t-il quelque chose d'autre que je dois faire?
4 Réponses :
J'ai récemment commencé à apprendre l'iphone sdk et je ne peux probablement pas vous donner la réponse ... mais ne devez-vous pas remplacer le code dans le si (nil == cellule) code> blocs avec
+1 Je suis d'accord avec @codeseavers. On dirait que vous n'allociez pas de cellules. Même si vous allouez quelque chose à workoutdifficultycell code>, vous devez l'allouer plus d'entre eux pour les autres cellules de la table. Je vous recommande de passer en revue la tableviewsuite sur le site Web d'Apple pour en savoir plus.
Essayez d'envelopper vos reloadowsAindexPaths à l'intérieur
[self.tableView beginUpdates]; [woTableView reloadRowsAtIndexPaths:paths withRowAnimation:UITableViewRowAnimationRight]; [self.tableView endUpdates]
Ce qui m'a aidé est totalement supprimer les reloadowsatidexpaths: et laissé uniquement [Self.TableView beginumdates]; [Self.TableView endupdates];
Juste pour informations. J'ai essayé d'envelopper plusieurs reloadrowowsatidexpaths code> dans un
beginUpdates code>
BLOCKDATES code>, mais cela a abouti à un comportement gênant avec le
accessoryview code>, qui était un
uiswitch code> qui est stocké dans une propriété. Et lorsque la lecture de la documentation commence / endupdates est utilisée pour l'insertion, la suppression et la sélection.
J'ai eu le même problème et définit apparemment sans rowowanimation: code> à
utableviewRowanimationnone code> résolu pour moi.
Je ne peux pas dire pourquoi, mais sinon la cellule fait une belle animation et est parti. P>
dispatch_async(dispatch_get_main_queue(), ^{ [self.tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationNone]; });
Avez-vous déjà eu ceci résolu? J'ai le même problème.