当通过触摸图标几秒钟进入主屏幕自定义模式时,我有 12 个视图旋转几乎类似于主屏幕中的图标。
我使用 3D 转换代码进行旋转。它们每个的持续时间仅为 0.02 秒,并且旋转的角度和方向会在加速度测量时永久改变。
其中 5 个视图很好,但 12 个视图的性能很差。这是旋转代码:
CATransform3D rotatedTransform = CATransform3DRotate(CATransform3DIdentity, degrees * M_PI / 180.0, 0.0f, 0.0f, 1.0f);
self.layer.transform = rotatedTransform;
有一些核心动画围绕着它。但是我在这里看到了 CPU 的浪费,因为我不做任何 3D 的东西。我真的只旋转二维而不是别的。它们是简单的 UIImageViews,但是是一个自定义类,可以自己执行此旋转动画。
我听说有“仿射”变换应该适用于 2D 空间。在这种情况下,您会建议将其更改为 2D 吗?
我必须更喜欢更改图层或视图的转换吗?哪个更快?