Пользовательский интерфейс заблокирован во время загрузки данных NSFetchedResultsController - PullRequest
1 голос
/ 13 сентября 2011

Я управлял UITableView через NSFetchedResultsController, но все пользовательские интерфейсы заблокированы (я ничего не могу сделать, такие как нажатие, прокрутка ...), пока NSFetchedResultsController загружает данные. Есть ли решение, чтобы решить эту проблему? Спасибо !!!

1 Ответ

1 голос
/ 13 сентября 2011

При создании дружественного пользователю приложения важно помнить следующее:

Если у вас есть какие-либо интенсивные, не UI связанные вычисления на Main Тема , вы делаете что-то не так!

Создание Main Thread UI только гарантирует, что UI никогда не замерзнет, ​​или, как вы его описываете, будет заблокирован. Поэтому ваш NSFetchedResultsController должен быть в другом потоке, чтобы этого не происходило.

NSOperation - это определенно способ решить проблему, которую вы описываете. Здесь - учебное пособие и пример кода, который объяснит похожий сценарий и как его исправить.

Надеюсь, что поможет!

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