2017-02-14 42 views
1

Я использую CAAnimation для анимации слоев, а затем накладываю их на видео, используя AVExportSession.CAAnimation - Show/Hide with duration 0

Я пытаюсь создать слой, который появляется/исчезает мгновенно, устанавливая продолжительность на 0. Однако, как представляется, минимальное значение 0.25f и, таким образом, анимация свойств, таких как непрозрачность, имеет переход.

Можно ли мгновенно показать/скрыть CALayer используя CAAnimation?

+0

Попробуйте установить его на небольшое ненулевое значение. Если вы оставите его как 0, он наследует продолжительность от транзакции, в которой он находится. – dan

ответ

0

Могу ли я предложить вам быстрый взгляд на Core Animation Руководство по программированию здесь - Animation_Types_Timing

вы также можете попробовать ненулевое значение, как дан предложил в качестве быстрого взлома.

Я надеюсь, что это может поставить вас на правильный путь.

+0

Так что метод @dan работает очень хорошо. Проблема в том, что если я хочу, чтобы надпись была видимой в начале видео (beginTime = AVCoreAnimationBeginTimeAtZero), есть очень быстрая вспышка. Я могу установить beginTime как отрицательное число, и экспорт выглядит отлично, но в проигрывателе все еще есть вспышка. –