Вот моя перезарядка функцияIOS UITableView reloadData только обновляет таблицу второй раз, когда я называю мой перезарядка функция
- (void) reloadTable:(id)sender
{
NSLog(@"Reload Table");
NSLog(@"%@",[appDelegate queryList]);
[self.driverTable reloadData];
[self.driverTable setNeedsLayout];
[self.driverTable setNeedsDisplay];
}
Вот где я называю это после получения данных от веб-сервиса
if([elementName isEqualToString:@"Response"]) {
Response = NO;
LookupView *lookupView = [[LookupView alloc] initWithNibName:@"LookupView" bundle:nil];
[lookupView reloadTable:self];
}
Неполадка прямо сейчас, после того, как я выполнил поиск, нажав кнопку поиска и получив данные. Таблица не обновляется новыми данными. Если я снова вызову ту же функцию, снова нажав кнопку поиска, таблица перезагрузится. Теперь я знаю, что данные есть, потому что я печатаю массив, прежде чем я вызову перезагрузку таблицы.
Любые идеи, почему?
Зачем вам нужно setNeedsLayout и setNeedsDisplay? UITableViews не нуждаются в перерисовке, они сами обрабатывают это время перезагрузки. – CodaFi
О, я просто изучал решения здесь, некоторые люди с подобными проблемами упомянули это, поэтому я просто пытался –
Удалите эти методы, упомянутые @CodaFi. Он не принадлежит к ним. –