Pull to refresh

Comments 20

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

Вот ВКонтакте к примеру, жмешь отправить сообщение в диалоге, оно сразу перезжает в верхнее окошко, но если нет интернета через некоторое время покажется ошибка.

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

Как для массового сервиса решение отличное, но вот как для профессионального инструмента весьма и весьма сомнительное.

В айфоне при отправке сообщения оно то же сразе переходит в ленту сообщений, но есть прогресс бар, который говорит о ходе отправки и если произошла ошибка, то я могу повторить отправку или отменить. Вот это и для массового отлично и для профессионала ясно.
Да, но только если лоадинг висит уже несколько минут, то фиг его знает грузится ли там что-то еще или уже все зависло?
И что показывает для вас прогресс бар — если нет интернета? Ужасный пример про IOS — они просто вас обманули.

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

Да, но только если лоадинг висит уже несколько минут, то фиг его знает грузится ли там что-то еще или уже все зависло?
Нормальный лоадинг всегда имеет таймаут, после которого показывается ошибка, так же как и в вашем прогресс баре или вовсе без ничего.
Вы понятия не имеете, что подразумевается под этой полосой загрузки. Вот при копировании файлов, скачивании торрента, загрузке файлов в Chrome — это количество перекачанных байт, а вот в IOS боюсь это означает то же, что и заставка при загрузке Windows — просто отвлекающий маневр.


В айос это означает тоже самое — количество передаваемых байт на сервер, сотовому оператору или куда-то еще. В любом случае передаются байты.
В айос это означает тоже самое — количество передаваемых байт на сервер, сотовому оператору или куда-то еще. В любом случае передаются байты.


Странно, а у меня часто бывает, что Progress начинается даже при отсутствии интернета. Т.е. вы разбирали исходники IOS и можете с уверенностью сказать, что прогресс-бар отражает количество байт?

Да и в любом случае при отправке письма с IOS — единицей информации я считаю письмо и вот тут в случае получения писем IOS корректно показывает 1 из 6 в прогресс баре.
Видимо автор хочет показывать вместо Loading пользователю этот пост :-)
А разве сейчас не так? Всякие «pull to refresh» (просто один из примеров) этим и занимаются, нет? Уже достаточно давно не видел никаких «Loading», которые бы запрещали бы делать вообще всё.
флеш игры? lazy loading на фотостоке?
UFO just landed and posted this here
Однако, статус можно вывести на весь экран/форму/модальный диалог (нужное подчеркнуть), заблокировав тем самым интерфейс, а можно — где-то в уголке, предоставив пользователю хоть минимальные возможности.
И что он будет делать без данных, если ему нужны именно они? Мотать туда-сюда список какой-нибудь от скуки?
На странице вполне может быть доступно много действий одновременно. Например, ставить плюсики к комментариям на хабре (я сам не ставил, но по логике можно сразу у 2 нажать?).
Ну да, вот сижу мотаю список писем в Thunderbird, пока тот грузит что-то тяжёлое через мой еле пыхтящий 3G :)
Мобильные устройства садятся быстрее при использовании wifi/3G. Сервера обработки данных придется делать более мощными ибо по вашей идее нужно постоянное подключение, а это огромное количество коннектов для сервера. Это может быть даже не рентабельно и не стоить усилий. Опрежение — опять же нужно пилить алгоритмы под конкретную задачу что может выйти очень дорого в разработке.
Я думаю, что нужно все же разделять природу ожидания.
Одно дело, когда в вашем приложении еще не произошла подгрузка ключевых данных для работы самого приложения, и совсем другое, когда природа ожидания не зависит от приложения.

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

Второй случай связан, в основном, с потерей соединения, В любом случае уместно выполнить некоторые изменения в интерфейсе с параллельно запущенным асинхронным запросом на некоторые действия, и по ответу, содержащему результат этих действий или же таймауту выполнять перерисовку, так например идет отображение подвисания сообщения в скайпе.
Пару дней назад трелло тормозил не по-деццки, и как раз вот подобный индикатор загрузки давал понять, что действие началось и не нужно лишний раз тыкать.
Когда производители железа дадут загрузить игровой мир из 1 ГБ в видео память меньше чем за 1 секунду…
Когда программы, требующие проверки на сервере (логин, пароль, синхронизация пользователей) научатся перелопачивать пару миллионов записей за одну милисекунду…
Когда загрузка 4-ядерного телефона перестанет занимать 10-20 секунд…

Тогда и можно будет убрать надпись Подождите…

Но мы еще забываем про отстающее СНГ. Где интернет на мобиле пропадает и появляется, где вайфай то падает то восстанавливается, где провайдеры просто виснут, а потом летают. И где лишь серьезный и взрослый человек может себе позволить мощный телефон, когда играть уже давно поздно…
Sign up to leave a comment.

Articles

Change theme settings