Несколько CABasicAnimations в нескольких представлениях вызывают проблемы

У меня есть несколько CABasicAnimations, для обновления locations CAGradientLayer на разные взгляды через мое приложение.

Поведение, которое я вижу, состоит в том, что, когда несколько CABasicAnimations запускаются одновременно, они время от времени, но довольно часто, не выполняют свою анимацию.

Я не могу сгруппировать анимации вместе, так как они для отдельных объектов, и не должны влиять друг на друга.

Я заключил их в CATransactions, просто когда несколько одновременных CATransactions запускаются, они, кажется, влияют друг на друга. Как я могу гарантировать, что эти анимации работают, не влияя друг на друга?

CATransaction.begin()
let animation = CABasicAnimation(keyPath: "locations")
.duration = stalkFadeDuration
animation.fromValue = [
    (value: 0 - stalkFadeLength),
    NSNumber(value: 0.0)
]

stalkGradientLayer.add(animation, forKey: nil)
CATransaction.commit()

0 ответов

Другие вопросы по тегам