如何动画UIView.layer.shadow& UIView.center同时发生

时间:2012-07-09 00:34:14

标签: uiview core-animation

我有一个问题:

我有一个UIView需要同时完成两个动画。

1)我需要为.layer.shadowRadius设置动画。

2)我需要为.center属性设置动画(将视点从A点移动到B点)。

我真的想使用UIView animateWithDuration:animations:以“新”方式执行此操作,但我无法为此方法中的阴影设置动画。我现在必须使用CABasicAnimation。

有没有办法轻松地将这些结合起来?

感谢

2 个答案:

答案 0 :(得分:1)

您应该创建两个CABasicAnimations(对于“shadowRadius”和“position”)并配置它们的值和值。

然后创建一个CAAnimationGroup并将动画设置为两个动画的数组。现在,您可以在动画组上配置持续时间,时间等,它将适用于两个动画。

(您将动画组添加到您动画的图层,因为它包含其他两个动画)。

答案 1 :(得分:0)

来自UIView Class Reference

  

UIView类的以下属性是可动画的:

     

@property frame

     

@property bounds

     

@property center

     

@property transform

     

@property alpha

     

@property backgroundColor

     

@property contentStretch

因此您无法为.layer.shadowRadius属性设置动画。我想你将不得不继续使用Core Animation。遗憾。