0

これがケースです。私の iPad 画面では、768 個の小さな時計が回っています。各時計には時針と分針があります。これらの視覚的なものは UIImageView の中にあります。また、UIBezierPath/CAShapeLayer を介してそれらを表現しようとしましたが、これはパフォーマンスに役立ちませんでした。もちろん、すべてをアニメーション化しようとすると、遅れが生じ始めます。それで、これを最適化する方法はありますか?アニメーション コードは非常にシンプルです。

CATransform3D rotationTransform = CATransform3DMakeRotation(M_PI_2, 0, 0, 1);
CABasicAnimation *rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform"];
rotationAnimation.toValue = [NSValue valueWithCATransform3D:rotationTransform];
rotationAnimation.duration = 0.5f;
rotationAnimation.cumulative = YES;
rotationAnimation.repeatCount = HUGE_VALF;
[_imageViewMinutePointer.layer addAnimation:rotationAnimation forKey:@"transform"];
4

2 に答える 2

0

おそらく、事前にレンダリングされた画像を使用すると、多くの CPU パワーをオフロードできます。1536 の時計は大きな時計にはならないため、ユニークな写真の数は少なくなります。

于 2013-08-06T21:10:44.053 に答える