#iphone #ios #cocoa-touch #core-animation
#iPhone #iOS #cocoa-touch #ядро-анимация
Вопрос:
Я настроил простую CAKeyframeAnimation с бесконечным количеством повторений и добавил ее в слой. Все в порядке, за исключением того, что анимация удаляется, когда я переключаюсь на другую вкладку (или, скорее всего, любой другой механизм изменения активного контроллера просмотра).
Задокументировано ли это где-нибудь, возможно, новое в iOS 5, и есть ли другое решение, кроме повторного запуска анимации в viewWillAppear? В этом случае временная база не имеет значения, запуск анимации с момента 0 будет в порядке.
Ответ №1:
Вы не должны выполнять какую-либо работу с View, пока его нет на экране, потому что это просто пустая трата ресурсов iPhone. Кроме того, ваше приложение может получить предупреждение о памяти, и просмотр будет выгружен. ИМХО лучший подход — настроить графику -(void) viewWillAppear
и запустить анимацию -(void) viewDidAppear
.
P.S. В -(void) viewDidLoad
параметрах frame of view все еще недопустимы, и если вы попытаетесь их использовать, вы можете что-то сделать неправильно.
Комментарии:
1. Это вообще не отвечает на мой вопрос.
2. Просто запустите анимацию
-viewWillAppear
, и все будет в порядке.3. Привет, Роман, ты абсолютно прав, но я уже упоминал эти моменты в своем первоначальном вопросе. Я ищу авторитетную ссылку на вопрос, который я задал.