0

我正在研究一个进度指示器,它的背景由 UIView 中不同图层上绘制的几个正方形组成。我正在尝试为这些正方形设置动画,使它们在不透明度中消失。想想数字方块,就像你的有线电视盒在弗里茨上,但淡入淡出。

有没有更好的方法然后使用 CAAnimations 并像这样设置每个 CALayer 不透明度

innerImage.layer.opacity = randomNum;

我试图避免使用过多的内存。

4

1 回答 1

1

UIKit是对核心动画(具有CALayerCAAnimation)的抽象。所以比较 哪个UIView属于哪个属于哪个是有点缺陷的。UIKitCAAnimationCoreAnimation

在此处输入图像描述

不看代码就很难说内存使用情况。但除非你犯了一些错误,否则它应该对你的应用程序的内存性能几乎没有影响。

UIKit并且CoreAnimation图层被大量缓存。因此,一旦动画被渲染,框架将重用缓存的视图以提高性能。此外,所有 CoreAnimations 都在 GPU 上运行,具有自己的处理器和内存寄存器。对于这个框架来说,进度条应该是轻而易举的事。我做了很多更复杂的事情,框架几乎没有流汗。希望这可以帮助...

检查这个非常有用的链接 - Designing for iOS Graphics Performance

于 2013-05-25T14:25:57.793 回答