Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Objective-C中创建单帧动画?_Objective C_Core Animation - Fatal编程技术网

如何在Objective-C中创建单帧动画?

如何在Objective-C中创建单帧动画?,objective-c,core-animation,Objective C,Core Animation,我试图在iPad应用程序中创建互动性 我想旋转一个图像库,我会使用平移或滑动移动来设置速度,并让它随着时间的推移而降低 因为我来自Actionscript世界,所以我会使用OneInterFrame处理程序来实现,但我不知道如何在Objective-C中实现这一点 编辑: 我要添加的移动类似于coverflow菜单。 我的问题是: 如何在每个帧(或类似于onEnterframe)上执行的方法中高效地执行代码 谢谢 您的答案是在中实现它,因为您谈论的是框架,我假设您希望为每个框架编写UI代码 自定

我试图在iPad应用程序中创建互动性

我想旋转一个图像库,我会使用平移或滑动移动来设置速度,并让它随着时间的推移而降低

因为我来自Actionscript世界,所以我会使用OneInterFrame处理程序来实现,但我不知道如何在Objective-C中实现这一点

编辑: 我要添加的移动类似于coverflow菜单。

我的问题是: 如何在每个帧(或类似于onEnterframe)上执行的方法中高效地执行代码


谢谢

您的答案是在

中实现它,因为您谈论的是框架,我假设您希望为每个框架编写UI代码

自定义每个“框架”的图形 您可以通过实现自定义视图来执行每一帧的代码,并使用每秒触发60次并调用
[self]的NSTimer
设置需要显示]。现在,将为每个帧调用自定义视图
drawRect:
方法

现在您有了执行每一帧的代码。我想说,这可能不是最有效的方法,尤其是如果你不改变每一帧之间的视图

来自手势识别器的回调 当用户滑动或平移时,手势识别器会给您回叫。如果您只想移动视图以响应此操作,那么将代码放在这些方法中就可以了

使用这种方法,您将只在需要响应更改时执行代码

使用核心动画覆盖流 若它和你们正在尝试的覆盖流相似,那个么你们很可能会使用核心动画来实现它。在这里准确地描述如何做到这一点有点复杂,而且我不知道你想让它看起来怎么样的细节,但是网上有很多很好的资源来描述你如何创建像封面流这样的东西


一个资源是,他在其中创建了一个具有核心Aniation的Cover flow UI。它已经有几年的历史了,主要针对Mac,但大部分仍然适用于iOS

谢谢@Oleg,但据我所知,这个方法只执行一次。我需要一个连续的计算/执行。我说的对吗?viewDidLoad只调用一次,每次视图出现时都会调用此方法,例如,当从另一个屏幕返回时。好的,也许我解释得不够。这是一个自定义的图像滚动条,视图总是在那里。我正在通过滑动/平移手势滚动图像,我希望设置一个速度,当我将手指从屏幕上移开时,该速度将降低。您如何移动图像?你用它做什么?我用手指在视图上滑动图像到一个方向。左或右。我希望它是平滑的动画,你需要对每一帧做什么样的计算?如果只是与UI相关,那么你可能应该尝试找到一个合适的“to value”,让操作系统为你做插值。为每一帧执行代码可能从来都不是很“高效”。我想根据滑动的大小设置一个速度,然后在我将手指从屏幕上移开后立即降低速度,就像让它慢慢消失……你有没有考虑过仅仅使用UIScrollView?当你抬起你的手指时,它会做摇摄和减速。如果我找不到其他任何东西,我可能会选择第一种解决方案。谢谢@David@xavi第一个解决方案可能不是最好的。它接近于对抗框架。我建议您重新思考如何处理此问题,以找到更适合平台的方法。我不是要你改变解决方案对用户的看法,只是想看看核心动画或自定义UI视图,在这些视图中,操作系统可以为用户完成大部分繁重的计算you@XaviColomer我用一个链接更新了我的答案,这个链接指向一个使用核心动画创建封面流的屏幕广播。这可能对你有帮助。