背景gif位置转换到其他ViewController

时间:2017-06-16 09:12:03

标签: ios swift animation background gif

所以问题是:我有一个gif背景,是通过这个人创建的扩展方法设置的SwiftGif Link

我使用方法backgroundAnimated.loadGif(name:“giphy”)来加载当前的gif,然后将gif解析到图像上,然后将其填充到数组上,随后调用UIImage类的animatedImage方法。

但问题是 - 我希望通过segue转换到下一个ViewController时保持循环gif的状态。 例如,如果我有鸟飞过屏幕中心然后随机有人按下按钮转到下一个ViewController,gif重置并从头开始。请帮我找到解决方案

我想到了解决方案:

  • 通过prepareForSegue将帧的坐标传递到其他ViewController上 问题是 - myBackground.frame始终为零坐标,所以我不知道如何获取最后停止的帧
  • 从CGRect初始帧位置开始 问题是 - 当按下转换按钮时,无法猜测它停止的帧位置。
  • 为所有ViewControllers制作一个gif背景(不知道如何实现这样的东西)

1 个答案:

答案 0 :(得分:0)

你确定你的myBackground UIImageView正在改变框架。我不这么认为。

我想你的gif正在改变它的关键帧。因此,您需要存储已停止的关键帧的索引,并从关键帧开始您的gif。