Циклы анимации UIImageView с разной скоростью

#iphone #animation #uiimageview

#iPhone #Анимация #uiimageview

Вопрос:

У меня есть массив с несколькими изображениями, которые я добавляю в UIImageView:

 myImageView.animationImages = myArrayOfImages;
  

Теперь я хочу выполнить этот цикл изображений X раз, но каждый раз с разной продолжительностью

 myImageView.animationDuration = randomTime;
  

Возможно ли это?

Ответ №1:

Вы пробовали? Я полагаю, вам нужно будет каждый раз создавать новый экземпляр UIImageView.

Комментарии:

1. Будет ли это прозрачно для пользователя? Я хочу показывать одну и ту же анимацию много раз, но с разной продолжительностью. Создание нового экземпляра UIImageViews может привести к каким-то коротким перерывам, я прав?

2. Это не должно быть проблемой. Вы бы создали свои объекты UIImage при запуске, а не удаляли их — вы бы просто повторно использовали объекты UIImage каждый раз при создании UIImageView. Я не предлагаю перезагружать изображения каждый раз, просто воссоздавая UIImageView, который их использует.

3. А как насчет [self performSelector:@selector(animationDone) withObject:nil afterDelay:X]; и в animationDone изменить продолжительность и вызвать startAnimating снова?

4. Только что просмотрев документы, я думаю, что это, вероятно, будет работать нормально. Я удивлен, что ты еще не пробовал, лол.