UIImageView Задержка анимации между кадрами? - PullRequest
1 голос
/ 11 января 2012

Я пытаюсь создать анимацию, используя UIImageView с массивом изображений.Это прекрасно работает, за исключением того, что мне нужна другая задержка между некоторыми кадрами.В анимированном GIF вы можете установить задержку между кадрами.Каждый пример анимированного UIImageView, который я вижу, имеет фиксированную задержку между изображениями.

Кто-нибудь знает, как я могу установить другую задержку между кадрами?Или есть пример такого?

Может быть, UIImageView не подходит для использования, поэтому, если у кого-то есть альтернатива, пожалуйста, дайте мне знать.

Я опубликовал похожий вопрос в другомфорумы, и никто, кажется, не сможет ответить на это.Кажется, что это должно быть выполнимо, так как .gif изображения имели это навсегда.

Спасибо

Ответы [ 4 ]

1 голос
/ 11 января 2012

Может показаться смешным, но:

Из UIImageView документации:

animationImages

Массив UIImage объектов, используемых для анимации.

@property(nonatomic, copy) NSArray *animationImages

Обсуждение

Массив должен содержать UIImage объектов. Вы можете использовать то же самое объект изображения более одного раза в массиве. Установка этого свойства в значение, отличное от nil, скрывает изображение, представленное image имущество. Значение этого свойства по умолчанию nil.

Так что вам нужно добавить UIImage несколько раз в массив для задержки.

0 голосов
/ 16 июля 2013

Если вы хотите попробовать мою библиотеку анимации в своем приложении для iOS, она предлагает полное решение этой проблемы.Например, вы можете взглянуть на приложение APNG , это бесплатное приложение в магазине iTunes, которое отображает анимированные файлы APNG.Это приложение было создано с использованием моей библиотеки AVAnimator, которая содержит поддержку декодирования APNG и GIF.Формат APNG работает так же, как GIF, в том смысле, что у каждого кадра может быть время задержки, в этом случае вы использовали бы существующее программное обеспечение для создания APNG.Но проще кодировать новый файл .mvid (это пользовательский формат видеофайлов) из серии изображений PNG.Чтобы создать более длительную задержку, вы просто повторяете кадры, которые не меняются во входной серии изображений PNG.Любой подход может быть использован для создания входного фильма, который может отображаться с переменным количеством времени между конкретными кадрами (общий FPS будет одинаковым, но конкретные кадры могут просто повторяться, чтобы они не менялись, скажем, на N кадров встрока).Вы также можете реализовать определенные пользовательские взаимодействия, такие как запуск анимации, пауза в определенном кадре и затем повторный запуск с того же кадра.

0 голосов
/ 11 января 2012

UIImageView не поддерживает разные задержки для разных изображений.Вам нужно будет использовать несколько UIImageView s и управлять переходом между ними вручную, если вы хотите иметь разные задержки между кадрами.

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

0 голосов
/ 11 января 2012

Вы должны использовать другой UIImageView, чтобы заставить это работать.Попробуйте эту страницу приложения.Может быть полезно для вас.Ссылка: http://www.raywenderlich.com/2454/how-to-use-uiview-animation-tutorial

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