DevPrep

Все темы › SwiftUI

Как устроены анимации в SwiftUI: implicit, explicit, Transaction и transitions?

Middle PRO

Суть

В SwiftUI анимируется не view, а изменение состояния. Каждое обновление идёт вместе с Transaction — контекстом, в котором лежит анимация (или nil). Когда новое дерево построено, анимируемые свойства (frame, opacity, цвет, animatableData фигур) интерполируются от старого значения к новому по анимации из транзакции. Неважно, как она туда попала — явно через withAnimation или неявно через модификатор.

Продолжение ответа с кодом и уточняющими вопросами интервьюера — в приложении DevPrep.

Полный ответ — в DevPrep

Потренируйтесь перед собеседованием

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

Скачать DevPrep в App Store