在像Vine Sign Up这样的视图控制器之间创建流畅的Gif Segue

时间:2015-10-08 09:59:13

标签: ios swift background-image segue animated-gif

我有一个注册并登录视图控制器和移动的gif背景以及其他故事板UI元素。

目前我在每个视图控制器上都有gif编码,显然会使gif重新启动,因为我在每个视图控制器之间进行切换,而且更多关于在页面之间移动时加载之前快速弹出白色。

我可以将哪些内容添加到我的代码中: 1.隔离时防止白色砰砰声 2.使用gif顺畅地在视图控制器之间交换,就像没有发生任何事情一样,所以看起来你移动UI而不是页面。

查看Vine登录/注册以获取参考,因为它基本上以类似的方式运行,并希望背景gif在Vine上运行。

override func viewDidLoad() {

       super.viewDidLoad()


    let filePath = NSBundle.mainBundle().pathForResource("beachwater", ofType:     "gif")
    let gif = NSData(contentsOfFile: filePath!)

    let webViewBG = UIWebView(frame: self.view.frame)
    webViewBG.loadData(gif!, MIMEType: "image/gif", textEncodingName: "UTF-8", baseURL: NSURL(string: "")!)
    webViewBG.userInteractionEnabled = false;
    webViewBG.layer.zPosition = -3.0;

    self.view.addSubview(webViewBG)

1 个答案:

答案 0 :(得分:1)

作为起点,不要使用UIWebView。这就是你在gif之前看到白色背景的原因,然后在渲染gif后不久就在网页上呈现了网页视图。

我建议使用以下技术之一分离出gif的帧并将它们加载到UIImage(最后加载到UIImageView)中: