Я создаю массив источника данных UITableView, используя этот код:UITableView reloadData не работает в прошивкой
-(void) viewWillAppear:(BOOL)animated
{
// IBOutlet of tableview is 'editMsgTableView'
editMsgTableView.dataSource=nil;
editMsgTableView.delegate=nil;
menuMessageArray = [[NSMutableArray alloc] init];
editMainMenuMsgArray = [[NSMutableArray alloc] init];
menuMessageArray = [DBManager fetchmenu:0 noOfRows:32];
for(int i=0; i< [menuMessageArray count]; i++)
{
NSMutableDictionary *menuMsgListDic = [[NSMutableDictionary alloc] init];
menuMsgListDic = [menuMessageArray objectAtIndex:i];
[editMainMenuMsgArray addObject:menuMsgListDic];
}
editMsgTableView.dataSource=self;
editMsgTableView.delegate=self;
[editMsgTableView reloadData];
}
Но он работает в первый раз. Но всякий раз, когда я делаю редактирование какого-либо файла tableView или приходит из другого контроллера представления, после этого, если вызывается viewWillAppear
, то reloadData
не работает. Я также пробовал:
dispatch_sync(dispatch_get_main_queue(), ^{
[editMsgTableView reloadData];
});
но не работает. Пожалуйста, помогите мне.
Возможно, ваша перезагрузка вызвана, но примечание изменено. Вызывается ли метод делегата tableview? –
- ваш массив источников данных получает обновленные данные? проверьте это тоже. – Akhilrajtr
Прежде всего, вы действительно хотите заполнить содержимое своей таблицы каждый раз, когда появится ваше представление? Вы отлаживались, если вызываются numberOfSectionsInTableView? –