На iPhone у меня есть CALayer
, который я оживляю с помощью Core Animation. Затем в какой-то момент я меняю вид контроллеров. Затем я возвращаюсь к контроллеру вида с CALayer
и в viewWillAppear:
я устанавливаю свойства рамки и положения на моем слое, чтобы переместить его обратно в начальную точку.
Установка этих свойств изменяет уровень модели, но уровень представления все еще имеет старые значения, и его уровень представления не обновляется до следующей анимации, которую я играю.
В руководстве по программированию CA написано:
"Вы можете запросить экземпляр CALayer для его соответствующего
уровень представления во время транзакции анимации. "
Что для меня означает, что уровень представления должен отличаться от уровня модели только во время анимации. Но в данный момент нет анимации. Я даже использовал kCATransactionDisableActions
, чтобы при установке свойства position неявная анимация не запускалась.
Кто-нибудь знает, почему слои моей презентации и модели не синхронизированы?
Спасибо.