SwiftUI 动画与过渡效果实战指南
1. 为应用添加基础动画
在应用中添加动画可以带来显著的视觉提升,即便只是微小的改动,也能让用户体验焕然一新。下面将介绍几种在 SwiftUI 应用中添加基础动画的方法。
1.1 旋转星星动画
在 RecipeDetailView.swift
文件中,为收藏按钮添加旋转动画。具体步骤如下:
- 找到收藏按钮,添加如下代码:
Button(action: {
Helper.addRemoveFavourite(recipe: self.recipe)
self.recipe.favourite.toggle()
withAnimation(.spring()) {
self.angle = self.angle == 1080 ? 0 : 1080
}
}) {
Image(systemName: isFavourite ? "star.fill" : "star")
.resizable()
.aspectRatio(contentMode: .fit)
}
.rotationEffect(.degrees(angle))
.frame(height: 45)
- 同时,在视图中添加
@State
变量:
@State private var angle: Dou