Karhin’s Blog
About technologies and life

Анимации - это весело и красиво, но восприятие даже самой эффектной анимации может испортить их реализация. Анимации в интерфейсе должны быть прерываемыми и не блокировать взаимодействие с приложением.

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

Успеваю словить улетающий экран приложения.

Пример плохой анимации в приложении Фитнес iOS. При открытии медальки проигрывается длительная анимация, которую нельзя пропустить и вообще как-то остановить шоу с медалькой. Тут ещё есть момент с тем, что экран можно закрыть только нажатием на кнопку назад.

Всё заблокировано, пока проигрывается анимация.

Я понимаю, что разрабатывать прерываемые анимации сложно, когда это цепочки из разных анимаций, но всё таки старайтесь давать возможность пользователям прерывать анимации, длящиеся дольше 300-400 миллисекунд. Особенно, если они частые.

Если интересно посмотреть или почитать про анимации, то вот несколько ссылок. Они про iOS, но всё, что в них описывается, будет интересно дизайнерам и разработчикам под Android.

Design Советы Apps Программирование

To post a comment, please log in or create an account.

Sign In

Технические подробности Artykul
Технические подробности Artykul

Совсем недавно мы запустили бета-тестирование по заявкам. Решил рассказать про технические проблемы при извлечении статей, что происходит под капотом.

817
DALL-E: я снова верю в технологии
DALL-E: я снова верю в технологии

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

409
Правильная реализация UIActivityViewController в SwiftUI
Правильная реализация UIActivityViewController в SwiftUI

С помощью Activity View Controller можно предоставить пользователю функции для взаимодействия с контентом в других приложениях. Реализуем его в SwiftUI.

1009