2008-10-17 6 views
8

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

Я обыскал и нашел некоторые сведения о классе UIActivityView, но доступный пример исходного кода не работал, и документация выглядит несколько кратким.

Может ли кто-нибудь предоставить простой пример того, как использовать этот класс?

ответ

11

Предполагая, что у вас есть контроллер вид настроить, и хотел бы добавить UIActivityIndicator к нему, вот как вы можете это сделать:

(предположим, что у вас есть переменная-член под названием indicator, который вам можно использовать позже, чтобы очистить)

для вашего интерфейса (.h файл):

UIActivityIndicator *indicator; 

для вашей реализации (.m файл):

Запуск анимации

CGRect b = self.view.bounds; 
indicator = [[UIActivityIndicator alloc] initWithActivityIndicatorStyle: 
              UIActivityIndicatorStyleWhite]; 
//center the indicator in the view 
indicator.frame = CGRectMake((b.size.width - 20)/2, (b.size.height - 20)/2, 20, 20); 
[self.view addSubview: indicator]; 
[indicator release]; 
[indicator startAnimating]; 

Остановить Animation

[indicator removeFromSuperview]; 
indicator = nil; 
0

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

Смежные вопросы