Вы не поверите тому, что я прошел, чтобы сделать это возможным;меня без конца раздражало, что это не стандартная функция iOS, и что переход tintColor выглядит уродливо, в то время как анимация для перемещения / выталкивания viewController настолько плавная.1003 * когда исчезать, и я даже написал класс с именем PSPDFNavigationAppearanceSnapshot, чтобы сохранить состояние навигации при извлечении.(Я понял эту идею из NimbusKit )
Реальная анимация довольно проста:
[self.navigationController.navigationBar.layer addAnimation:PSPDFFadeTransition() forKey:nil];
CATransition *PSPDFFadeTransition(void) {
return PSPDFFadeTransitionWithDuration(0.25f);
}
CATransition *PSPDFFadeTransitionWithDuration(CGFloat duration) {
CATransition *transition = [CATransition animation];
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionFade;
transition.duration = duration;
return transition;
}
Вы можете сжать этот код еще больше;это отрывок из моей библиотеки PDF PDF iOS PSPDFKit, и я использую затухание в разных местах, таким образом, вспомогательные функции.