приложение для iPhone - показывать UIActivityIndicator во время выполнения IBAction - PullRequest
1 голос
/ 19 января 2009

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

Я попытался поместить [индикатор startAnimating] перед вызовом метода, чтобы получить новые данные таблицы (где индикатор имеет тип IBOutlet UIActivityIndicator * и сопоставлен с элементом управления в IB), но индикатор не отображается. Вместо этого кнопка обновления навигационной панели находится в нажатом положении, пока управление не вернется из этого метода IBAction.

Как показать индикатор, когда выполнение метода завершено?

Спасибо.

1 Ответ

2 голосов
/ 19 января 2009

Вам нужно получить новые данные для таблицы в фоновом режиме. Это может быть асинхронный сетевой вызов или поток, в зависимости от того, что делает ваш код обновления, но пользовательский интерфейс предполагает, что нажатие кнопок происходит практически мгновенно.

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

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