таблица reloadData не работает - PullRequest
0 голосов
/ 08 февраля 2011

Я использую следующий код для удаления строки из таблицы и из БД, строка удаляется из БД сразу, но не из таблицы, пока я не вернусь назад и не снова сделаю запрос, я хочу, когда я удалюстрока таблицы должна загружать данные ... есть идеи?

-(void) tableView:(UITableView *)tableView
commitEditingStyle:(UITableViewCellEditingStyle)editingStyle 
forRowAtIndexPath:(NSIndexPath *)indexPath 
{
    [self.table beginUpdates];

  if (editingStyle == UITableViewCellEditingStyleDelete) 
  { 
    Hadits *delHadit = [self.allBookMarks objectAtIndex:indexPath.row];
    dbAccess *dbmethods = [[dbAccess alloc] init]; 
    NSInteger delHaditid = delHadit.haditid;
    [dbmethods deleteBookMark:delHaditid];
    [dbmethods release];    
  }
  [self.table reloadData];//its not working reload data...
  [table endUpdates];
}

Ответы [ 2 ]

1 голос
/ 08 февраля 2011

Включить эту строку,

[self.allBookMarks removeObjectAtIndex:indexPath.row];

EDIT:

Проблема не в reloadData, а в том, что вы не обновляете свой источник данных (self.allBookMarks). Обновите значения в self.allBookMarks, затем перезагрузите таблицу.

Отредактированный код

-(void) tableView:(UITableView *)tableView
commitEditingStyle:(UITableViewCellEditingStyle)editingStyle 
forRowAtIndexPath:(NSIndexPath *)indexPath 
{
    [self.table beginUpdates];

  if (editingStyle == UITableViewCellEditingStyleDelete) 
  { 
    Hadits *delHadit = [self.allBookMarks objectAtIndex:indexPath.row];
    dbAccess *dbmethods = [[dbAccess alloc] init]; 
    NSInteger delHaditid = delHadit.haditid;
    [dbmethods deleteBookMark:delHaditid];
    self.allBookMarks = [dbMethods getAllBookMarks]; 
    [dbmethods release];    
  }
  [self.table reloadData];//its not working reload data...
  [table endUpdates];
}
0 голосов
/ 08 февраля 2011

Что такое self.table?Это ваша переменная класса для вашего UITableView?Обратите внимание, что вы также можете ссылаться на UITableView напрямую, поскольку он передается в этот метод как tableView.Я не знаю, правильно ли настроена ваша переменная table (через Interface Builder) или что, но я бы попробовал использовать переменную tableView.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...