У меня есть ячейка таблицы, во время ее щелчка открывается другое представление таблицы, вы можете выбрать что-то в качестве значения ячейки представления таблицы. Проблема здесь в том, что данные во втором представлении таблицы большие, и загрузка займет много времени. Поэтому после того, как я нажму на ячейку, экран застынет там, что не является удобным для пользователя. Я хочу отобразить индикатор выполнения во время загрузки второго представления таблицы. Но я не могу найти хорошее место, чтобы добавить это. Мне интересно, в каком методе я должен добавить код, чтобы отобразить индикатор выполнения.Как отобразить индикатор выполнения во время загрузки другого вида таблицы с видом таблицы
ответ
Две вещи:
Я бы серьезно рассмотреть другой вариант, а не индикатор, попробуйте, например, что-то вроде MBProgressHUD, он выглядит лучше, и он подходит для вашей цели.
Для реализации этого, вы должны убедиться, что поток пользовательского интерфейса не застревает (и, следовательно, приложение не «замораживается») - это означает вызов процесса загрузки в фоновом потоке. Метод, который начинает процесс загрузки, должен запустить индикатор прогресса, и метод, который имеет дело с отображением загруженных данных (после его готовности), должен удалить его. Удачи!
насчет отображения UIActivityIndicator (sample image here) в аксессуар зрения UITableViewCell?
Вы можете поместить его с каким-то кодом ...
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
cell.accessoryView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
}
Вы также могли бы сделать вам расчет долго берущим в фоновом потоке, вызвав
[self performSelectorInBackground:@selector(yourLongTakingMethod) withObject:nil];
Если ваше приложение замерзает, это означает, вы блокируете UIThread, например, @stavash. Индикатор выполнения - это просто анимированное изображение, оно не решит вашу проблему. То, что вы хотите сделать, это поместить ваш «код подготовки данных» в поток. Легким способом было бы использовать Grand Central Dispatch. Для начала посетите this tutorial. Вы можете пропустить первый тайм и сосредоточиться на реальных блоках потоков. API-интерфейсы: dispatch_queue_create
, dispatch_async
и dispatch_release
.
Это не сделает индикатор выполнения. Однако он разблокирует ваш пользовательский интерфейс. Затем вы можете рассмотреть методы создания индикатора выполнения. Используйте встроенную или какую-то пользовательскую анимацию. Или даже предварительно загрузите данные в первом представлении таблицы с помощью фоновой задачи.
- 1. Как показать индикатор выполнения во время загрузки?
- 2. Показывать индикатор выполнения во время загрузки файлов
- 3. Показывать индикатор выполнения во время загрузки
- 4. Blackberry индикатор выполнения во время загрузки
- 5. Индикатор выполнения «удаление» во время загрузки
- 6. Как связать ячейку вида таблицы с другим конкретным видом таблицы?
- 7. Как отобразить индикатор выполнения во время соединения с сервером
- 8. Создание таблицы во время выполнения
- 9. Индикатор выполнения в ячейке таблицы
- 10. Как отобразить индикатор выполнения JQuery во время $ .post
- 11. Как показать индикатор загрузки во время загрузки?
- 12. Как отобразить индикатор выполнения во время запроса ajax (jquery/php)
- 13. Как отобразить индикатор выполнения в качестве фона строки таблицы?
- 14. Как изменить имя таблицы во время выполнения
- 15. Как обновить индикатор выполнения во время выполнения с помощью C#
- 16. Доктрина подкачки из таблицы во время выполнения
- 17. Как создать DB-таблицы во время выполнения
- 18. Перезагрузка таблицы с другого вида
- 19. Классический ASP - показать индикатор выполнения во время загрузки страницы
- 20. Как поместить индикатор выполнения во время загрузки файла в Codeigniter
- 21. Как загрузить пользовательский индикатор выполнения во время загрузки
- 22. Индикатор выполнения Rails во время выполнения запроса
- 23. Показывать индикатор выполнения во время вызова AJAX
- 24. установка таблицы видаПросмотр как IBOutlet другого вида
- 25. Backbone.js индикатор выполнения во время сбора коллекции
- 26. Индикатор выполнения во время загрузки виртуализированного wpf datagrid
- 27. Изменить имя таблицы во время выполнения
- 28. Android: Загрузка данных таблицы во время выполнения
- 29. Переопределить содержимое макета таблицы во время выполнения
- 30. Изменение таблицы Auth во время выполнения