我正在尝试将一些自定义绘图代码从视图移动到 aCAShapeLayer
中,然后将其作为子层添加到原始视图的CALayer
. 这也很有效,但是当旋转设备时,动画开始出现断断续续的情况,例如,您只看到原始方向的帧,然后是最终方向,中间最多有一帧 - 一点也不流畅。相应的滑入和滑出动画UIViewController
也有点生涩(但不是那么多)。
它中的所有CAShapeLayer
具有path
是一CGPathAddRect
,它被设置为opaque
,它的opacity
是1.0f
并且fillColor
被设置为不透明的蓝色。
然而,当直接在视图drawRect
方法中绘制路径时,动画是平滑的。所以我想这与CAShapeLayer
旋转期间的动画有关。
你能告诉我如何摆脱那些急躁或只是CAShapeLayer
在动画时隐藏?回到CGPath
直接 draw s 对我来说不是一个选择,因为我依赖于CAShapeLayer
为其路径设置动画的能力(在我尝试旋转视图时它没有动画)。
/update:当旋转UIViewController
的视图包含一个具有子类的视图CAGradientLayer
时也会发生这种情况layerClass
(例如,具有渐变层作为背景的视图)。
干杯
法师先生