大量同步动画的设计模式

时间:2013-01-12 16:17:39

标签: ios objective-c uiview core-animation

我有超过150个UIImageViews。我需要他们表现得像一个大芭蕾舞。我还需要能够动态编排它们。一些旋转,一些鸭子,一些跳跃(每个当前是不同的UIImageView子类)。

我假设我需要将它们全部放入NSDictionary中,然后根据键获取对象并说“你旋转”,“你跳”,“你躲开”。并且在播放音乐时同步这些动作(没有真正的音乐,而是来自外部源的数据)。而且我不知道音乐(数据)到达之前会是什么,之前没有人听过这首歌。我在里面设置了一个带有大型switch语句的while (music){}循环。

我想手动将所有芭蕾舞女演员放在笔尖的视野中,以便它们与子视图正确对齐。它们都没有改变x,y。他们可能只改变z,也许交换图像,淡化不透明度等(我称之为旋转,鸭子和跳跃)。此处没有用户互动,您只是在观众中。

我还假设我需要使用UIView的beginAnimation,setAnimation,commitAnimation方法。

我是否在正确的轨道上?实现这一目标的最佳方法是什么?我应该考虑的任何优化?为所有类比道歉,这是解释我想要实现的最简单的方法。

1 个答案:

答案 0 :(得分:1)

我建议你看看UICollectionView。关于它有一个很棒的WWDC session。我不确定您要实现的目标,但使用UICollectionView,您可以自动设置自定义布局和不同布局之间的动画。因此,如果您的图片必须同步移动,这可能是一个不错的选择。