13

我有一个CALayer淡入AVMutableComposition的,应该在屏幕上停留一段时间然后消失。问题是,它应该在没有动画的情况下消失,但CABasicAnimation最短持续时间为 0.25 秒。

如何在给定时间后设置图层的不透明度而不对其进行动画处理?

4

1 回答 1

3

将层的移除封装到禁用动画的核心动画事务中:

[CATransaction begin];
[CATransaction setDisableActions:YES];
// remove the layer from its hierarchy
[CATransaction commit];

或在 Swift 中相同:

CATransaction.begin()
CATransaction.setDisableActions(true)
// remove the layer from its hierarchy
CATransaction.commit()
于 2018-07-06T04:20:32.623 回答