Swift - 通过设置视图的transform属性实现动画

设置视图对象的transform属性,可以实现各种动画效果。


1,移动
指在同一平面内,将控件按照某个直线方向平移一定的距离。
1
2
3
4
5
//每次都从当前位置平移
self .imageView.transform = CGAffineTransformTranslate ( self .imageView.transform, -2.1, -2.1)
 
//每次都从最开始的位置计算平移
self .imageView.transform = CGAffineTransformMakeTranslation (2.3, 2.3)


2,旋转

1
2
3
4
5
6
7
8
//连续旋转
UIView .beginAnimations( nil , context: nil )
UIView .setAnimationDuration(3.0) //设置动画时间
self .imageView.transform = CGAffineTransformRotate ( self .imageView.transform, CGFloat (- M_PI /2))
UIView .commitAnimations()
 
//独立旋转,以初始位置旋转
self .imageView.transform = CGAffineTransformMakeRotation ( CGFloat (- M_PI /4))


3,缩放

1
2
3
4
5
6
7
8
//连续缩放
UIView .beginAnimations( nil , context: nil )
UIView .setAnimationDuration(3.0) //设置动画时间
self .imageView.transform = CGAffineTransformScale ( self .imageView.transform, 1.5 ,1.5)
UIView .commitAnimations()
 
//独立缩放,以初始位置缩放
self .imageView.transform = CGAffineTransformMakeScale (1.3, 1.3)


4,反转

1
2
3
4
5
6
7
8
9
10
11
12
//返回初始状态
self .imageView.transform = CGAffineTransformIdentity
 
//连续反转
UIView .beginAnimations( nil , context: nil )
UIView .setAnimationDuration(3.0) //设置动画时间
self .imageView.transform = CGAffineTransformConcat ( self .imageView.transform,
     CGAffineTransformInvert ( self .imageView.transform))
UIView .commitAnimations()
 
//独立反转,以初始位置反转
self .imageView.transform = CGAffineTransformInvert ( self .imageView.transform)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值