Заголовок UITableView не отображается правильно после обновления основных данных - PullRequest
4 голосов
/ 04 декабря 2010

Я впервые столкнулся со странным поведением при рисовании заголовка.Вот шаги, которые я выполняю, и они воспроизводимы каждый раз.

  • Перейти к вкладке 2. Выберите элемент для загрузки.
  • Загрузка завершает и импортирует данные в базу данных CoreData, котораясвязан с TableView на вкладке 1 (показано).
  • Я делаю следующие вызовы в TableView:

}

-(void)controllerWillChangeContent:(NSFetchedResultsController*)controller {
    [self.setsTableView beginUpdates];
}

-(void)controllerDidChangeContent:(NSFetchedResultsController*)controller {
    [self.setsTableView endUpdates];
}
  • Перейдите на вкладку 1, и заголовок 1-го раздела будет отображаться неправильно.

Как только я переместу прокрутку TableView вверх или вниз, проблема немедленно решится сама собой.Кроме того, если я выйду из приложения и вернусь обратно, заголовок будет отображаться правильно.

Я нарисовал красную рамку вокруг проблемной области.

Кто-нибудь когда-либо видел такое поведение раньше?

strange header behavior

Обратите внимание на разницу в том, как отображается заголовок ниже.Вот как это должно выглядеть с самого начала.Все, что я делаю между скриншотом 1 (вверху) и скриншотом 2 (ниже), это прокрутку UITableView.

this is how it SHOULD look

Ответы [ 2 ]

2 голосов
/ 18 июля 2011

В последней версии iOS эта проблема, похоже, исчезла.Я так и не нашел решения.

1 голос
/ 08 июля 2013

Помните ли вы, чтобы перезагрузить таблицу, когда новые данные доступны используя этот метод. это выполняется в основном потоке, пользовательский интерфейс запускается только в основном потоке

 dispatch_async(dispatch_get_main_queue(), ^{

                    [self.tableview reloadData];

                });

это обновление ..............

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