Приложение TableView заканчивается из-за «NsinternalinconSsistentsexception»

Я пытаюсь получить повешение UiableViews и все, что идет с ним. На данный момент у меня есть следующий код:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
     return 10; 
} 

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
     static NSString *CellIdentifier = @"Cell";
     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];


     if (cell == nil) {
         cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
     }

     [cell.textLabel setText:[NSString stringWithFormat:@"I am cell %d", indexPath.row]];

     return cell; 
}

- (IBAction)killItem {
     NSIndexPath *indexToDelete = [NSIndexPath indexPathForRow:2 inSection:0];
     [tbl deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexToDelete] withRowAnimation:UITableViewRowAnimationRight];
}

, и я получаю следующую ошибку при запуске функции «KillItem»:

завершающее приложение из-за неопределенного исключения «NsinternalinconsSistentsexception», причина: «Неверное обновление: неверное количество строк в Раздел 0. Количество строк, содержащихся в существующем разделе после обновления (10), должно быть равно количеству строк, содержащихся в этом разделе до обновления (10), плюс или минус, количество строк, вставленных или удаленных из этого раздела (0 вставленные, 1 удалено). «

Как я понимаю, таблицы, в основном, иметь делегат и источник данных, где источник данных, среди прочего, определяет, сколько рядов должно быть в табличном виде. Через несколько поисков здесь в StackoverFlow я обнаружил, что эта ошибка вызвана, когда «источник данных не соответствует действительности», когда он ищет строки, которые не существуют, что я удалил.

Я мог бы получить это неправильно, но это то, что я думаю, это делает это. Итак, мой вопрос, как я могу получить их, чтобы соответствовать, чтобы я мог избежать этой ошибки?

для справки, я посмотрел на следующие сообщения, не понимая, что мне нужно сделать:

Ошибка: количество Ряды в разрезе в UiableView в iPhone SDK

Slide UiableViewCell

Terminating App из-за неосторожного исключения «NSrangeeException», причина: '*** - [NSMUTABLEARRAY OBLEATATINDEX:]: индекс 1 превышает оценки [0 .. 0]

Добавление [TBL ReloadData] [TBL enguppdate] ... [tbl engupdate] В функции KillItem, кажется, не помогает моей проблеме.

заранее спасибо, Тобиас введен

7
задан Community 23 May 2017 в 12:18
поделиться