苦於設計師老喜歡在一個app里設置兩種不同顏色的vc 風格.
navigationBar的顏色還能通過把navigationBar的背景設置為透明再在vc中搭顏色
但navigationBar中的按鈕,標題等 都無法很好地獨立控制
除非把navigationBar加在vc中,讓vc完全獨立控制
這又失去了iOS 過渡動畫的一些特性,看着不爽
比較理想的是微信的效果,能在push/pop動畫中漸變修改不同狀態下的顏色來達到不同風格效果
效果如下

注意看那個返回按鈕的箭頭顏色
於是...
需每個vc獨立控制當前顯示navigationBar的顏色配置,可在每個viewWillAppear中使用
[self.transitionCoordinator animateAlongsideTransition:^(id<UIViewControllerTransitionCoordinatorContext> _Nonnull context) {
self.navigationController.navigationBar.tintColor = [UIColor blueColor]; //控制按鈕顏色
self.navigationController.navigationBar.barTintColor = [UIColor orangeColor]; //控制導航欄背景色 按需設置
} completion:^(id<UIViewControllerTransitionCoordinatorContext> _Nonnull context) {
}];
