CellforrowatIndexPath aufgerufen, wenn die Tabellenzelle geklickt wird, um zu bearbeiten [geschlossen

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

  •  16-09-2019
  •  | 
  •  

Frage

Wenn eine Tabelle erstellt wird, cellForRowAtIndexPath wird aufgerufen, um die Zellen zu bevölkern. Zuvor, als eine Zelle auf Bearbeiten geklickt wurde, cellForRowAtIndexPath wurde nicht angerufen, und die Zelle hätte Text mit dem Tipp mit:

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

Wenn ich nun auf Zellen klicke, die unter der Zelle mit Zeile = 4 sind, wo die Oberseite der Tastatur befindet, befindet sich, cellForRowAtIndexPath wird mit einer Reihe größer als der Gesamtzahl der Zeilen aufgerufen, die einen Absturz verursachen. Wenn ich auf die Zellen 0 bis 4 klicke, kann ich die Zellen bearbeiten und CellForrowatIndexPath wird nicht angerufen. Cell trewatIndexPath wurde zuvor nicht für Klicken auf eine der Zellen aufgerufen. Ich habe etwas geändert, das dies verursacht, aber nicht herausfinden kann, was es ist.

Weiß jemand, was dazu führen kann, dass das Zellströkatindexpath beim Klicken auf eine Zelle aufgerufen wird, um sie zu bearbeiten? Es sieht fast so aus, als würde es denken, dass ein neuer Tisch erstellt wird.

War es hilfreich?

Lösung 2

Ich fand heraus, was das Problem war. Ich hatte eine Zeile mehr in der Tabelle angegeben als tatsächlich existierte.

Andere Tipps

Wenn Sie diese Zeile haben:

[myTable reloadData]; 

Überall im Code wird es erneut Cell ForrowatIndexPath bezeichnen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top