回転する方法

ビュー回転するには、ビューに回転のエフェクトを付けます。
更に、回転してるアニメーションを付けることも出来ます。
回転のエフェクト
ビューを回転するには、まずrotationEffectを使います。
func rotationEffect ( _ angle , anchor : UnitPoint ) -> some View
angele : 回転する角度
anchor : 回転軸。デフォルトはcenterで中央が軸
rotationEffectは、ビューをangleで指定した角度分だけ回転させるエフェクトです。
回転といってもぐるぐる回るわけではありません。
Text("90度回転する")
.rotationEffect(.init(degrees: 90))

.init(degrees : 角度)で、回転する角度を指定します。
rotationEffectだけでは、回転する動作は付きません。
回転してるように見せたいなら、ここからアニメーションをつける必要があります。
アニメーションを付ける
animationモディファイアを使って、ビューにアニメーションを付けます。
アニメーションには、色々ありますがここでは.linearを指定します。
@State var degree : Double = 0
var body: some View {
Button(action : {
//回転する角度を変更
self.degree += 90
}) {
Text("90度回転する")
.rotationEffect(.init(degrees: degree))
.animation(.linear(duration: 1))
}
}
タップするごとに90度回転します。
そして、回転している.animation()をrotationEffectの後に付けます。
こうすることで、回転にアニメーションが付与されます。
まとめ
ビューの回転には、rotationEffectを使います。
更に、animationモディファイアによって、アニメーションを追加することも出来ます。
コメント