Мне интересно, как можно анимировать границы CALayer, чтобы при каждом изменении границ слой вызывал drawInContext:
. Я пробовал два следующих метода в моем подклассе CALayer:
- Установка
needsDisplayOnBoundsChange
наYES
- Возврат
YES
для +(BOOL)needsDisplayForKey:(NSString*)key
дляbounds
ключа
Ни работать. CALayer, кажется, полон решимости использовать исходное содержимое слоя и просто масштабировать его в соответствии с contentsGravity
(что, я полагаю, для повышения производительности). Является ли это обходным путем для этого, или я упускаю что-то очевидное?
РЕДАКТИРОВАТЬ: И, кстати, я заметил, что мой собственный подкласс CALayer
не вызывает initWithLayer:
для создания presentationLayer
- странно.
Заранее спасибо, Сэм
setFrame
,setBounds
иsetPosition
. Они не вызываются во время анимации. - person Alexander Ljungberg   schedule 29.10.2011needsDisplayOnBoundsChange
ДА. Только последний кадр будет правильно отрисован сdrawInContext:
. - person Alexander Ljungberg   schedule 02.11.2011