gpt4 book ai didi

iphone - 如何在 iPhone-OS 中链接动画?

转载 作者:行者123 更新时间:2023-12-03 19:41:03 25 4
gpt4 key购买 nike

我想做一些复杂的动画。但我只知道如何对一组变化进行动画处理。有没有办法链接动画,以便我可以进行更改 A -> B -> C -> D -> E -> F (等等),而核心动画会等待每个动画完成并然后继续下一个?

特别是,我想这样做:我有一个显示立方体的 UIImageView。

第 1 阶段)立方体平放在地板上

阶段2)立方体稍微向左旋转,旋转原点在左下角。

阶段3)立方体稍微向右旋转,旋转原点在右下角。

这些阶段重复 10 次,并在阶段 1) 停止。而且,随着时间的推移,摆动会变得越来越小。

我知道如何对 block 中的一个更改进行动画处理,但是如何在其间插入一些复杂的代码来完成这样的重复操作呢?随着时间的推移,这不是同一件事。它发生了变化,因为摆动变得越来越小,直到停止。

最佳答案

假设您正在使用 UIView 动画...

您可以提供一个动画“停止”方法,该方法会在动画实际完成时调用(请查看setAnimationDelegate)。因此,您可以将一系列动画排队并准备就绪。设置委托(delegate)然后启动第一个动画。当它结束时,它会调用 setAnimationDidStopSelector 方法(确保检查 finished 标志以确保它确实完成,而不仅仅是暂停)。您还可以传递动画上下文,它可以是动画队列中的索引。它也可以是包含计数器的数据结构,以便您可以通过每个周期调整动画值。

因此,只需等待一个任务完成,然后开始从队列中取出的下一个任务即可。

如果您使用其他类型的动画,同样的方法也适用。您只需要设置数据结构,以便它知道在每个结束后要做什么。

关于iphone - 如何在 iPhone-OS 中链接动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/854160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com