Есть ли способ заставить drawRect анимировать ИЗ ПРЕДЫДУЩЕЙ СЦЕНЫ в следующую?
(Удивительно) вы можете анимировать внутри drawRect - попробуйте. Вы можете затухать, переводить или анимировать любое другое свойство.
Однако оно начинается «с нуля», с нуля. Так, например, если вы поместите блок плавной анимации в drawRect, предыдущая сцена с исчезновением и новая сцена будет исчезать с белого.
Я хочу, чтобы экран исчез от предыдущего изображения (нарисованного в предыдущем цикле drawRect) до нового изображения, которое я только что нарисовал ... эээ, я рисую.
Есть ли способ сделать это, возможно, хитроумно, манипулируя тем, что происходит, с помощью drawRect?
Это может показаться очень распространенным вариантом использования - смешивание одной сцены с другой ].
Кто-нибудь знает секрет?
Конечно, очевидно, что это можно сделать в среде основной анимации или многими другими способами, но переход drawRect от одного drawRect к другому - очевидная идея. Ура.
Поразительное обновление благодаря гению WrightCS .....
Только благодаря WrightCS мы теперь знаем, что drawRect отлично справляется с анимацией. Просто вставьте этот код в конец любого drawRect и попробуйте его:
self.alpha = 0.0;
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:2];
self.alpha = 1.0;
[UIView commitAnimations];
он обрабатывает весь drawRect, независимо от его сложности, как один огромный блок и включает его в эту анимацию. Да, он даже включает закрашивание внеэкранных областей, рендеринг растровых изображений или что-то еще. Все оживляется. Кто знал?
Проблема - как заставить анимацию запускать с предыдущей сцены, а не с пустой?