我有点问题:
我有一个 UIView 需要同时完成两个动画。
1)我需要为.layer.shadowRadius
.
2)我需要为.center
属性设置动画(将视图从 A 点移动到 B 点)。
我真的很想用“新”的方式来做这个UIView animateWithDuration:animations:
,但是我不能用这种方法为阴影设置动画。我现在必须使用 CABasicAnimation。
有没有办法轻松地结合这些?
谢谢
我有点问题:
我有一个 UIView 需要同时完成两个动画。
1)我需要为.layer.shadowRadius
.
2)我需要为.center
属性设置动画(将视图从 A 点移动到 B 点)。
我真的很想用“新”的方式来做这个UIView animateWithDuration:animations:
,但是我不能用这种方法为阴影设置动画。我现在必须使用 CABasicAnimation。
有没有办法轻松地结合这些?
谢谢
您应该创建两个CABasicAnimations
(用于“shadowRadius”和“位置”)并配置它们的 to 和 from 值。
然后创建一个CAAnimationGroup
并将动画设置为两个动画的数组。现在您可以在动画组上配置持续时间、时间等,它将应用于两个动画。
(您将动画组添加到您正在制作动画的图层,因为它包含其他两个动画)。
UIView 类的以下属性是可动画的:
@property 框架
@property 边界
@物业中心
@property 转换
@property 阿尔法
@property 背景颜色
@property 内容拉伸
所以你不能为.layer.shadowRadius
属性设置动画。我想你将不得不继续使用 Core Animation。对不起。