Как бы вы себя почувствовали, если спросили бы у продавца где находится интересующий вас товар, а он бы просто продолжил стоять на одном месте? Скорее всего вы просто прошли бы мимо такого продавца. Пользователи чувствуют примерно то же самое, когда на протяжении долгого времени смотрят на спиннер.
Спиннеры не предназначены для длительных процессов
Спиннеры не говорят пользователям, сколько времени займет загрузка. Если вы будете использовать их для длительных процессов, то пользователь скорее всего решит, что с приложением что-то не так. Недостаток обратной связи создает неуверенность, которая заставляет пользователей предполагать худшее.
Они предположат, что загрузка займет слишком много времени, и просто не захотят ждать. Нетерпение сыграет свою роль, и они, возможно, нажмут на кнопку «назад», или просто выйдут из приложения.
Правило четырех секунд
Если вы планируете использовать спиннер, то используйте его только для процессов, выполнение которых занимает не больше четырех секунд. Исследование показало, что большинство пользователей могут вытерпеть именно столько. Это значит, что по истечении этого времени, их поведенческие намерения начнут изменяться.
Когда стоит использовать спиннер
Пользователи ожидают немедленного отклика приложения. Немедленный отклик — это меньше одной секунды. Если через секунду они не получают какой-либо визуальной обратной связи, то начинают волноваться.
Если ваш процесс занимает больше секунды — отобразите спиннер. Это скажет пользователям, что приложение загружается, тем самым снизив их волнение.
Индикатор выполнения упрощает ожидание выполнения длительных процессов
Если выполнение процесса занимает больше четырех секунд, то вам стоит использовать индикатор выполнения. Пользователи с большей охотой соглашаются на ожидание, если видят индикатор.
Это происходит потому, что такой способ устанавливает четкие рамки ожидания. Линейный индикатор позволяет им видеть, что процесс выполняется. Если пользователь видит спиннер, то не видит прогресса выполнения, и не понимает, выполняется ли процесс вообще.
Как отображать индикатор выполнения
Индикатор выполнения должен показывать пользователям, сколько работы уже выполнено. Анимация должна передвигаться слева направо, сохраняя постепенный и последовательный темп. Если анимация надолго зависнет на одном месте, то пользователь решит, что что-то не так, и откажется ждать.
Также стоит добавить цифровое обозначение оставшегося времени. Если выполнение процесса займет меньше минуты, то используйте проценты, или количество загруженных элементов. Информируйте пользователя о той активности, которую проводит приложение по мере загрузки.
Если выполнение процесса займет больше минуты, то отобразите оставшееся до его окончания время. Это даст пользователю понять, что придется подождать. Отображение оставшегося количества минут, позволит им заняться своими делами, и при этом знать, когда нужно вернуться к экрану.
Заключение
Множество дизайнеров используют спиннеры во всех своих проектах. Но используя спиннеры для долгих процессов, вы только расстроите пользователей. Избегайте этого, используя индикатор выполнения.
Индикатор выполнения упрощает ожидание выполнения длительных процессов. Пользователь вряд ли откажется подождать, если он знает, что приложение что-то для него делает. Но если это занимает слишком долгое время, то нужен визуальный фидбэк. Если пользователь не знает, чего ждет, то он скорее всего не вытерпит, и уйдет.