如下图所示,Twitter为每个推送的视图控制器使用不同的导航栏颜色.
我已经尝试了几乎所有东西(setbackgroundimage,backgroundcolor,bartintcolor等),但似乎没有任何效果.我认为Twitter使用自定义过渡来模拟推送,因为,在我看来,每个视图控制器都有自己的导航栏和他自己的颜色.
解决方法
Twitter不会更改导航栏颜色.当您查看用户的个人资料时,它是用户封面照片的模糊版本.
正如您在转换中看到的那样,整个用户配置文件视图将替换先前的视图.导航栏不会更改,它会被替换.他们甚至可能不使用UINavigationBar(或者至少不是导航控制器中的那个).
“条形图”是一个自定义视图,显示用户的封面照片,背面/搜索/推文按钮出现在通常的位置.当您向下滚动时,用户的封面照片会缩小,模糊并附着到屏幕顶部 – 此时,它看起来像一个普通的导航栏.此时,用户的姓名和推文计数也会向上滚动到导航栏的中心.
它非常有趣,而且用户个人资料的整个视图结构可能会使用一堆技巧.但是模仿他们的个人资料视图并不是一个简单的任务,他们所做的远远不止是改变导航栏的色彩.如果你只是想这样做,撤销的答案很有效.但是,您可能还需要在viewWillAppear方法(旧视图和新视图)中重置色调颜色.