Анимировать заголовок NavigationBar - PullRequest
2 голосов
/ 27 июня 2011

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

Есть ли способ анимировать заголовки панели навигации?

Ответы [ 3 ]

3 голосов
/ 18 декабря 2014

Новый ответ на старый вопрос, но все еще применяется. Если вы хотите анимировать разные строки заголовка, используйте следующее:

CATransition *animation = [CATransition animation];
fadeTextAnimation.duration = 0.5;
fadeTextAnimation.type = kCATransitionFade;

[self.navigationController.navigationBar.layer addAnimation: fadeTextAnimation forKey: @"fadeText"];
self.navigationItem.title = "My new title";

Вы можете, конечно, отрегулировать длительность и настроить функцию синхронизации.

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

просто используйте код анимации UIView. не знаю, работает ли это на 100%, но это должно! поэтому в методе, который вы меняете, сделайте [UIView animateWithDuration:0.5 animations:^{}] и измените заголовок там. надеюсь, что это работает для вас!

0 голосов
/ 27 июня 2011

Насколько я могу судить, ничто в UINavigationBar / UINavigationItem не может быть анимировано, кроме размера бара и методов, которые устанавливают элементы бара и принимают параметр animated:.

...