MBProgressHUD увольнение - PullRequest
       18

MBProgressHUD увольнение

1 голос
/ 31 января 2012

У меня есть MBProgressHUD, который показывает, когда данные переносятся в фоновом режиме асинхронно. Иногда, когда сеть работает медленно, это может длиться вечно. Так что на данный момент я просто скрываю это через 30 секунд, если оно не было отклонено. Какой хороший способ отклонить этот HUD для медленного сетевого подключения?

Ответы [ 2 ]

4 голосов
/ 31 января 2012

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

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

0 голосов
/ 31 января 2012

Реализация делегата MBProgressHUD

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

-(void)hudWasHidden
{
    [HUD removeFromSuperview];

}
...