cellForRowAtIndexPath appelée lorsque la cellule de table est cliqué sur pour modifier [fermer]

StackOverflow https://stackoverflow.com/questions/1283463

  •  16-09-2019
  •  | 
  •  

Question

Quand une table est créée, cellForRowAtIndexPath est appelé à remplir les cellules. Auparavant, quand on clique sur une cellule à modifier, cellForRowAtIndexPath n'a pas été appelé, et la cellule aurait du texte tapé dans l'aide:

#pragma mark Text Field Delegate Methods
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
self.textFieldBeingEdited = textField;
}

Maintenant, quand je clique sur les cellules qui sont en dessous de la cellule avec la ligne = 4, qui est l'endroit où le haut du clavier est, cellForRowAtIndexPath est appelée avec une rangée supérieure au nombre total de lignes provoquant un accident. Lorsque je clique sur les cellules 0 à 4, je peux modifier les cellules et cellForRowAtIndexPath n'est pas appelé. cellForRowAtIndexPath n'a pas été appelé auparavant pour cliquer sur l'une des cellules. J'ai changé quelque chose qui est à l'origine, mais ne peut pas comprendre ce qu'elle est.

Quelqu'un sait ce qui peut causer des cellForRowAtIndexPath à appeler en cliquant sur une cellule pour le modifier? Il semble presque comme il pense une nouvelle table est créée.

Était-ce utile?

La solution 2

Je me suis dit ce que le problème. Je l'avais indiqué plus d'une ligne dans le tableau que réellement existé.

Autres conseils

Si vous avez cette ligne:

[myTable reloadData]; 

Partout dans le code, il appellera cellForRowAtIndexPath à nouveau.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top