使用步幅旋转对象
Use stride to rotate object
我想使用跨步语法跨步旋转对象。盒子应该经过 3 次迭代并旋转 270 度。我不相信我下面的一些代码逐字匹配语法。仅供参考。
Var box = UIView()
Override func viewdidload(){
Super.viewdidload()
For rotate in Stride(from : 0, to: 3, by +1 ) {
box.transform = box.transform.rotatedby( .pi/2)
}}
Swift, Stirde, loop, viewdidload
你不能使用循环来做到这一点,因为 UI 只会在循环完成后更新
可以用UIView.animate做动画,做递归实现n次动画
func rotateBox(count: Int) {
if count > 0 {
UIView.animate(withDuration: 1, animations: {
self.box.transform = self.box.transform.rotated(by: .pi/2)
}, completion: { _ in
self.rotateBox(count: count - 1)
})
}
}
我想使用跨步语法跨步旋转对象。盒子应该经过 3 次迭代并旋转 270 度。我不相信我下面的一些代码逐字匹配语法。仅供参考。
Var box = UIView()
Override func viewdidload(){
Super.viewdidload()
For rotate in Stride(from : 0, to: 3, by +1 ) {
box.transform = box.transform.rotatedby( .pi/2)
}}
Swift, Stirde, loop, viewdidload
你不能使用循环来做到这一点,因为 UI 只会在循环完成后更新
可以用UIView.animate做动画,做递归实现n次动画
func rotateBox(count: Int) {
if count > 0 {
UIView.animate(withDuration: 1, animations: {
self.box.transform = self.box.transform.rotated(by: .pi/2)
}, completion: { _ in
self.rotateBox(count: count - 1)
})
}
}