UIActivityIndicatorview зависает, когда приложение перемещается на передний план iOS4 - PullRequest
0 голосов
/ 15 июля 2010

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

Любая идея, почему индикатор активности зависает и что может быть возможным решением.

Спасибо.

1 Ответ

5 голосов
/ 15 июля 2010

У фонового приложения практически нет причин для обновления своего пользовательского интерфейса.

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

Из превосходного Руководства по программированию приложений iPhone для iPhone метод делегата приложения -applicationWillEnterForeground: вызывается всякий раз, когда приложение выходит на передний план.

Вы можете переопределить этот метод и добавить логику для активации виджетов здесь.Или вы подписываетесь на свой класс (просмотр контроллера и т. Д.) Для прослушивания уведомления UIApplicationWillEnterForegroundNotification.Если вы прослушиваете это уведомление, вы можете вызвать селектор, который обновляет состояние пользовательского интерфейса, учитывая то, что приложение делает в данный момент.

...