防止 iOS 7 UINavigationBar 使用 UIAppearance 为 barTintColor 更改设置动画
Posted
技术标签:
【中文标题】防止 iOS 7 UINavigationBar 使用 UIAppearance 为 barTintColor 更改设置动画【英文标题】:Preventing iOS 7 UINavigationBar from animating barTintColor change with UIAppearance 【发布时间】:2014-05-02 20:12:02 【问题描述】:我想在没有动画的情况下更改每个UINavigationBar
的barTintColor
。这可能吗?
在 ios 7 上,如果 UINavigationBar
是半透明的,barTintColor
的动画会发生变化。如果将半透明设置为NO
,则将barTintColor
更改,然后将半透明设置回YES
,则将更改条形色调,而无需动画。
在使用UIAppearance
代理时,有什么方法可以实现类似的效果吗?无法使用 UIAppearance
更改半透明度。
【问题讨论】:
【参考方案1】:首先将barTintColor
设置为nil
似乎有效。奇怪...
[[UINavigationBar appearance] setBarTintColor:nil];
[[UINavigationBar appearance] setBarTintColor:[UIColor magentaColor];
【讨论】:
以上是关于防止 iOS 7 UINavigationBar 使用 UIAppearance 为 barTintColor 更改设置动画的主要内容,如果未能解决你的问题,请参考以下文章
iOS 7 中 UINavigationbar 下方的 UISegmentedControl
在 ios 7 中如何增加 UINavigationbar 的大小
覆盖 UINavigationBar 时 iOS 7 状态栏变黑