iOS对一系列图像进行动画处理

莉尔·莫克(LilMoke)

我有一个iOS应用程序,它将一组图像和一个持续时间加载到数组中,然后有一个计时器来显示图像,如下所示:

- (void)fireTimer:(NSTimer *)theTimer
{
    self.image = [frames objectAtIndex:currentFrame];
    NSTimeInterval time = [[durations objectAtIndex:currentFrame] floatValue];
    self.timer = [NSTimer scheduledTimerWithTimeInterval:time target:self selector:@selector(fireTimer:) userInfo:nil repeats:NO];
    currentFrame++;
    if (currentFrame >= [frames count])
    {
        currentFrame = 0;
        [timer invalidate];
    }
}

要开始动画,我调用fireTimer并循环显示图像,然后在处理完所有图像后,我调用[timer invalidate]停止动画。我不能使用startAnimation,因为每个图像需要不同的持续时间。

知道我不是在后台线程上执行此操作,因此动画不稳定,因为在对图像进行动画处理时发生了其他处理。

在后台对此进行动画处理的最佳方法是什么?我可以简单地将此调用放在fireTimer中吗?

我知道这可能不是在iOS上为图像设置动画的最佳方法,但是我现在不想对代码进行大量重构。

感谢您提供更好的解决方案的任何建议或示例!!!

埃米莉

我建议您使用UIImageView对图像进行动画处理:可以完成此任务。如您所说,如果某些图像需要比其他图像保留更长的时间,那么您可以多次显示它们。假设image2的显示时间比image1和image3的显示时间长两倍,只需animationImagesUIImageViewlike:初始化数组即可@[image1, image2, image2, image3]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

相互独立地对一系列图像块进行动画处理

来自分类Dev

相互独立地对一系列图像块进行动画处理

来自分类Dev

使用线程在多个位置对一系列图像进行动画处理

来自分类Dev

通过Canvas上的一系列点对对象进行动画处理,同时保持一致的速度?

来自分类Dev

单击带有SVG“动画”的一系列图像

来自分类Dev

对一系列电话进行排序

来自分类Dev

iOS7 Sprite Kit如何设置一系列取决于动画时间的动作?

来自分类Dev

AnimationDrawable缩小图像以进行动画处理

来自分类Dev

在Python中对图像进行动画处理

来自分类Dev

AnimationDrawable缩小图像以进行动画处理

来自分类Dev

在iOS上对MarkerinfoWindow进行动画处理

来自分类Dev

如何使用Spark处理一系列HBase行?

来自分类Dev

如何顺序处理一系列AJAX请求的结果?

来自分类Dev

在VBA中处理一系列逗号分隔的值

来自分类Dev

如何处理一系列配对文件

来自分类Dev

在Matlab中根据一系列图像创建视频

来自分类Dev

MATLAB查找一系列图像的像素中值

来自分类Dev

如何从一系列图像生成PDF?

来自分类Dev

从一系列图像 URL 计算平均尺寸

来自分类Dev

避免对一系列混合项进行全面理解

来自分类Dev

通过一系列运算符进行迭代

来自分类Dev

遍历一系列日期进行比较

来自分类Dev

将来同时进行一系列阻塞呼叫的轮询

来自分类Dev

将一系列间隔与自身进行比较

来自分类Dev

使用Laravel Carbon每月进行一系列订购

来自分类Dev

如何对一系列元素进行外键查找?

来自分类Dev

如何对一系列日期进行子集化

来自分类Dev

对 Panda Dataframe 中的一系列列表进行分组

来自分类Dev

简化一系列 IF THEN

Related 相关文章

热门标签

归档