ios - 在 IOS (Swift) 中覆盖 Alpha 图形?

标签 ios swift animation

我很好奇是否有人可以帮助我构思出最佳、最有效的方法来实现将视频/图像序列叠加在 View 之上的效果。最好的例子是 iOS 上的普通天气应用程序。截图;

enter image description here

你可以看看动画here .我做了一些测试,发现最简单的方法是在 After Effects 中创建带有 alpha channel 的图形,然后导出为 .png 图像序列,并使用以下代码;

// Set the animation group
    myAnimation!.animationImages = [UIImage]()

    for var index = 0; index < 149; index++ {
        var frameName = String(format: "image_\(index)")
        myAnimation!.animationImages?.append(UIImage(named: frameName)!)
    }

    myAnimation?.animationDuration = 5.0
    myAnimation?.startAnimating()

我一直面临的问题是,对于一个五秒的动画循环,我正在查看 150 帧的内容。以 @3x 和 @2x 分辨率创建这些图形,即使应用程序变薄,也会使我的应用程序包变得庞大。此外,更重要的是,向数组附加 150 张图像似乎会在播放内容时造成相当大的延迟。

如果我要构建一个天气应用程序,就像上面的例子一样,我也会查看几十种不同的天气状况,并且需要数百个单独的帧。

有没有更好的方法来解决这个问题?谢谢!

最佳答案

我会尝试使用带有 .mp4 的 AVPlayer。低对比度视频(如天气应用)将有助于缩小尺寸并将影响降到最低。

关于ios - 在 IOS (Swift) 中覆盖 Alpha 图形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35344606/

相关文章:

android - LinearGradient中心动画

javascript - 取消所有排队的 jQuery SlideUp 和 SlideDown 动画

ios - GLKBaseEffect 未加载纹理(纹理在对象上显示为黑色)

ios - touchesBegan 在 Swift 中的用法

ios - 当 UITable View 在下拉菜单中显示和隐藏时如何向上/向下移动 View iOS

ios - 为什么 swift 隐藏受限协议(protocol)的默认实现?

javascript - 如何在每次动画迭代计数后更改元素的大小?

iphone - 使用 CIImage 添加纯色边框

ios - UITableViewCell 之外的标签为当前屏幕上的单元格更新

ios - 我们是否必须生成并使用客户端库才能使用 Google App Engine 的端点?