cellForRowAtIndexPath вызывается при нажатии на ячейку таблицы для редактирования [закрыто]

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

  •  16-09-2019
  •  | 
  •  

Вопрос

Когда создается таблица, cellForRowAtIndexPath вызывается для заполнения ячеек.Ранее, когда ячейка была нажата для редактирования, cellForRowAtIndexPath не был вызван, и в ячейку мог быть введен текст, используя:

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

Теперь, когда я нажимаю на ячейки, которые находятся под ячейкой с row = 4, где находится верхняя часть клавиатуры, cellForRowAtIndexPath вызывается со строкой, превышающей общее количество строк, вызывающих сбой.Когда я нажимаю на ячейки от 0 до 4, я могу редактировать ячейки, и cellForRowAtIndexPath не вызывается.cellForRowAtIndexPath ранее не вызывался для нажатия на какую-либо из ячеек.Я изменил что-то, что вызывает это, но не могу понять, что это.

Кто-нибудь знает, что может вызвать вызов cellForRowAtIndexPath при нажатии на ячейку для ее редактирования?Это выглядит почти так, как будто он думает, что создается новая таблица.

Это было полезно?

Решение 2

Я понял, в чем была проблема.Я указал в таблице на одну строку больше, чем существовало на самом деле.

Другие советы

Если у вас есть эта строка:

[myTable reloadData]; 

В любом месте кода он снова вызовет cellForRowAtIndexPath .

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top