Добавление индикатора активности в подробный вид контроллера с разделенным представлением

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

Все эти контроллеры подробного представления представляют собой табличные представления, которые извлекают данные с сервера. Следовательно, при выборе строки в корневом контроллере требуется некоторое время для загрузки соответствующего подробного представления. Я хочу показать индикатор активности в подробном представлении до загрузки следующего представления. Может кто-нибудь мне поможет?? Заранее спасибо.


person PETER    schedule 13.09.2011    source источник


Ответы (2)


Здесь (MBProgressHUD) у вас есть индикатор выполнения, который очень легко интегрируется в код и очень гибкий, чтобы не сказать удобный в программировании приложений для iPhone, он называется MBProgressHUD. Если вам это не нравится, вы всегда можете использовать индикатор NetworkActivity, который уже есть на iphone.

person Joze    schedule 13.09.2011
comment
: Спасибо за ваш ответ. Но проблема связана с контроллером представления, к которому я добавляю индикатор. Представление в части подробного представления контроллера splitview отображается до тех пор, пока не будет загружено следующее представление. Я пытался добавить индикатор к этому, но приложение дает сбой, показывая: Завершение приложения из-за необработанного исключения «MBProgressHUDViewIsNillException», причина: «Представление, используемое в инициализаторе MBProgressHUD, равно нулю». . Любая идея? - person PETER; 14.09.2011
comment
Насколько я понимаю, вы неправильно инициализируете MBProgressHUD. Я говорю вам, что это ноль, поэтому он не может этого показать. Вы пытаетесь получить доступ к объекту (MBProgressHUDView), который еще не существует. Можете ли вы опубликовать код, который вы используете`?? - person Joze; 14.09.2011
comment
Вот код: photoDetail *detail=[[photoDetail alloc]init]; HUD = [[MBProgressHUD alloc] initWithView:self.navigationController.view]; [self.navigationController.view addSubview:HUD]; HUD.delegate = сам; HUD.labelText = @Загрузка; [HUD showWhileExecuting:@selector(viewDidLoad) onTarget:detail withObject:nil анимированный:YES]; - person PETER; 14.09.2011
comment
вы используете его, на каком viewDidLoad? - person Joze; 14.09.2011
comment
Но что такое предстоящий viewDidLoad? Какова цель этого взгляда? Получает ли он данные? Что оно делает? - person Joze; 14.09.2011
comment
В моем первом контроллере просмотра будет несколько миниатюр. При нажатии на миниатюру будет загружен второй контроллер просмотра. Второй контроллер просмотра будет извлекать серию данных полноэкранного изображения с сервера, сохранять их в массив и отображать. Второй представление загружается только после того, как все данные изображения будут получены. Следовательно, я хочу показать индикатор загрузки до загрузки второго представления. - person PETER; 14.09.2011
comment
Затем выберите метод для индикатора, который извлекает полноэкранные изображения. Пока изображения не загружены, индикатор продолжает гореть. - person Joze; 14.09.2011
comment
Я пробовал. Но не работает. Проблема в том, что второе представление отображается только после загрузки всех изображений. До тех пор будет видно первое представление. неперехваченное исключение «MBProgressHUDViewIsNillException», причина: «Вид, используемый в инициализаторе MBProgressHUD, равен нулю». в консоли. В любом случае, спасибо за вашу ценную помощь, мистер Джоз. - person PETER; 15.09.2011
comment
Попробуйте получить изображения в тот момент, когда вы нажмете на миниатюру и поместите туда индикатор. когда индикатор закончит работу, будет показан второй вид с уже загруженными изображениями. Попробуй это. У меня никогда не было такого исключения, поэтому у меня немного нет идей. - person Joze; 15.09.2011

проверьте отложенные изображения таблиц образец кода для очень аккуратной реализации...

person Swapnil Luktuke    schedule 13.09.2011