2010-02-03 1 views
0

В моем текущем проекте игры в iPhone я использую UIView, которые представляют собой некоторые игровые элементы (они - плитки). Анимация один за другим работает хорошо или в небольшой серии (5 анимаций UIView в то же время).Анимация нескольких проблем с UIVIew

Но как только я решил более активно объединить эти же UIView, я начинаю получать некоторые странные проблемы с рендерингом (весь сенсорный экран iPod становится черным, а затем возвращается в игровой режим после того, как анимация выполнена или почти выполнена, в в другом случае экран мерцает между черным и фактическим видом игры, пока он пытается оживить).

Я сделал несколько тестов, и до сих пор кажется, что до 18 UIView анимируется. У меня нет никаких проблем, но как только я доберусь до 30 UIView, я вижу проблемы с рендерингом. И переход анимации, который я использую, - это Flip справа.

Есть ли максимальный поток анимации, который можно запустить сразу?

Я вызываю метод в моем подклассе UIView, который выполняет стандартную анимацию фиксации анимации. И я устанавливаю кэш в YES.

Любые идеи, что может быть причиной ошибки рендеринга?

Благодарим за сотрудничество.

ответ

1

Не существует явного максимума анимации, которая может работать одновременно.

Но каждая анимация будет использовать память и использование ЦП. Это, конечно, сильно зависит от вида анимации, которую вы делаете.

Таким образом, вы, вероятно, пытаетесь сделать слишком много анимации одновременно.

Использование анимации UIView отлично подходит для многих вещей, но иногда вам нужно использовать что-то более подходящее, как OpenGL. Может быть, вы в такой ситуации.

0

Возможно, у вас могут возникать проблемы с памятью или пределы графического процессора, если вы пытаетесь много сделать с анимацией UIView. Вы МОЖЕТЕ попытаться сделать это со слоями, но есть ограничения на то, что может обрабатывать GPU.