どうも、ちょげ(@chogetarou)です。
スライドアニメーションをする方法を紹介します。
方法

スライドアニメーションをするには、offset修飾子を使います。
まず、ビューにoffset修飾子を付与します。
offset修飾子の引数で、ビューの位置を指定します。
次に、ビューにアニメーションを付与します。
ExampleView(・・・)
.offset(x: x, y: y) //引数でビューの位置を指定
.animation(・・・)
最後に、offsetの引数の指定したビューの位置を、変化させます。
使用例
struct ContentView: View {
@State var isRight = false
var body: some View {
VStack {
Rectangle()
.frame(width: 200, height: 200)
.offset(x: isRight ? -90 : 90, y: 0)
.animation(.spring(), value: isRight)
Button(action: {
self.isRight.toggle()
}) {
Text("Rotate")
}
}
}
}
オススメの記事
コメント