Используя Базовую Анимацию, там способ сгруппировать анимации для нескольких CALayers?

Это будет зависеть от того, что у вас есть на карточке Marks, но надеюсь, это поможет:

Скриншот рабочего стола Tableau

Если это не поможет, можете Вы расширяете снимок экрана, чтобы были видны карточка Marks, полка Rows и полка Columns.

5
задан Hans Sjunnesson 7 January 2009 в 13:45
поделиться

4 ответа

Если Вы присоедините анимации к нескольким CALayers в отдельном методе, то они все начнут в (эффективно) то же время. Я использую этот подход в головоломке с допущением ошибок, в конце анимаций, я присоединяю следующий этап анимации к любому шару, который нуждается в дальнейшей анимации.

Я анимирую до 60 CALayers за один раз и не испытываю любые задержки между этапами анимации, но я не кэширую анимации в массиве никакого вида, я не уверен в thge наверху, Вы имеете там.

Мои анимации относительно просты, и созданные и приложены к каждому CALayer на лету. Мои спрайты являются квадратом на 60 пкс и используют пару дюжины возможных изображений для представления их содержания.

В некоторых случаях существуют, умножают анимации, которые я могу создать с различным временем начала (использующий beginTime), я связываю их CAAnimationGroup - но Вы не можете предварительно вычислять последующие анимации.

5
ответ дан 14 December 2019 в 09:03
поделиться

Если бы Вы добавляете 3 анимации к 3 различным слоям все одновременно, и у них есть та же продолжительность, я ожидал бы, что они все анимируют вместе. Какое поведение Вы видите?

0
ответ дан 14 December 2019 в 09:03
поделиться

Если вы поместите анимацию в CATransaction, CG позаботится о том, чтобы все они выполнялись во время одной и той же итерации основного цикла.

[CATransaction begin]; // все ваши анимации [CATransaction commit];

2
ответ дан 14 December 2019 в 09:03
поделиться

cp21yos: не могли бы вы подробнее рассказать о своем методе? Я пытаюсь сделать что-то подобное, что включает в себя анимацию нескольких слоев за раз, более одного раза. Вы сказали: «В конце анимации я прикрепляю следующий этап анимации». Вы можете это объяснить? Когда я пытаюсь поместить логику для выполнения дополнительных анимаций в событие animationDidStop, происходит только последняя анимация, а не вся последовательность анимаций.

0
ответ дан 14 December 2019 в 09:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: