Я хочу удалить CALayer из суперслоя без анимации.Здесь происходит то, что слой анимируется в позицию, прекрасно работает, когда анимация останавливается, этот код выполняется, который возвращает слой в начальную позицию и исчезает;по-видимому, затем удаляется из суперслоя.Как можно остановить анимацию -removeFromSuperlayer?Код, приведенный здесь, имеет одинаковое поведение для всех вариантов включенных комментариев, которые не комментируются и не комментируются, Транзакция или нет транзакции.Чего мне не хватает?
- (void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag
{
//[self setHidden: YES];
//[CATransaction flush];
[CATransaction begin];
[CATransaction setValue:(id)kCFBooleanTrue
forKey:kCATransactionDisableActions];
//[CATransaction setDisableActions: YES];
//[CATransaction setAnimationDuration: 0];
[self removeFromSuperlayer];
[CATransaction commit];
}
Я искал вокруг, и этот код ничем не отличается от того, что я нашел.