February 3, 2024
52. Анимируем загрузку через скелетон
Покажу как без особых сложностей сделать красивый скелетон на SwiftUI для iOS 14 и выше с использованием модификатора mask. Бонусом будет состояние "перезагрузка", в котором при нажатии на вьюшку можно выполнить повторный запрос к серверу.
На что нужно обратить внимание
- Все стили в коде (цвета, шрифты, иконка) взяты для примера - смело ставь нужные тебе значения
- Если нужно настроить паддинги для скелетона, их можно удобно передать снаружи в качестве
EdgeInsets(не стал добавлять в примере кода для краткости) - Если раньше не доводилось работать с маской (
mask), обязательно прочитай комментарии в коде внутри методаskeletonIfNeededи комментарий дляlinearGradient - Для
ReloadModelреализован протоколEquatable, и в нем нельзя сравниватьaction🙂
Код для этой статьи можно посмотреть тут, а другие статьи - тут.