Несколько различных анимаций UIImageView в цикле - PullRequest
0 голосов
/ 25 марта 2012

Мне нужно сделать следующую анимацию с аудиоклипом при повторении:

  • Показать изображения 1, изображение 2 и изображение 3 всего за одну секунду (0,33 секунды каждое)
  • Показатьimage4 в течение пяти секунд и проиграйте аудиофайл.
  • Показывайте image5 и image6 каждую секунду
  • Повторите 3 раза

В идеале я хотел бы создатьанимацию, начните анимировать и оставьте это делать.то есть создайте UIImageView, создайте массив «animations» с изображениями и вызовите «startAnimating».Но для этого мне нужно было бы включить image4 15 раз, а изображения 5 и 6 3 раза, чтобы анимация была правильной.Я также должен был бы запланировать звук на каждую 2-ю секунду каждого 8-секундного цикла.

Какие еще есть варианты для создания этого типа многоступенчатой ​​анимации?Должен ли я обрабатывать каждую часть отдельно, с обратным вызовом делегата, когда анимация заканчивается, что побуждает меня затем анимировать следующую часть последовательности, пока вся анимация не будет повторяться 3 раза?

Любой совет очень ценится.Спасибо, ребята.

Ответы [ 2 ]

0 голосов
/ 25 марта 2012

Я бы обновил изображение в UIImageView на основе NSTimer. Массив / словарь может хранить имена изображений и количество секунд. По таймауту установите следующее изображение и запустите другой таймер. Петля в 3 раза макс.

0 голосов
/ 25 марта 2012

просто грубая мысль, не практиковалась с реальным кодом:

  1. вам нужен универсальный UIViewController для управления всем
  2. вам нужен подкласс UIViewController, выполняющий каждую сцену, с настраиваемыми свойствами, такими как: изображение, длительность, bgMusic и т. Д., Также определяющий протокол с методом делегата, что-то вроде - (void) didAnimationFinish;
  3. в вашем главном viewcontroller (описано в 1), создайте массив, который содержит несколько экземпляров viewcontroller (описано в 2), не забудьте настроить их по желанию и назначить их делегаты на главный viewcontroller
  4. запустить первую анимацию viewcontroller либо путем представленияModalViewController
  5. дождитесь вызова методов делегата и перейдите к следующему индексу массив (описано в 3)

снова, просто быстрая идея

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...