2012-02-22 5 views
3

Я пытаюсь применить переход от моего текущего контроллера представления к следующему контроллеру представления. его работа, но его заметное отставание (очень заметно). поэтому, я хотел бы спросить, у вас, ребята, есть какие-либо предложения/решения для улучшения этой анимации uiview для переключения с одного контроллера представления на другой?Как улучшить производительность laggy анимации UIView

вот фрагмент моего кода, и спасибо за чтение, оцените любые полезные комментарии/предложения. спасибо

[UIView animateWithDuration:0.50 delay:0.00 options:0 animations:^{ 
    [self.navigationController pushViewController:viewController animated:NO]; 
    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.navigationController.view cache:NO]; 
} completion:^(BOOL finished) { 

}]; 

ответ

6

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

Вы можете попробовать включить аргумент cache, который вы в настоящее время устанавливаете в НЕТ, чтобы узнать, поможет ли это в краткосрочной перспективе, но на самом деле это бандана, а не лекарство.

Кроме того, с частотой кадров 60 кадров в секунду в лучшем случае анимация в формате .5 секунд будет иметь только 30 кадров для работы максимум. Если вы увеличите продолжительность анимации немного, она станет более гладкой, если оптимизация представления будет оптимизирована.

+1

+1 Также хочу добавить эту рекомендацию к вашему ответу [Понимание iOS View Compositing] (http://developer.apple.com/itunes/?destination=adc.apple.com.10079881589.010079881595.11490838336?i=1760812197) , (советы для достижения гладкой анимации) – 0x8badf00d

Смежные вопросы