逐渐更改状态栏颜色

时间:2014-05-02 11:19:38

标签: ios animation text statusbar

在iOS7中更改状态栏的文本颜色很简单,并且有很多关于该主题的信息。

所以,为了给你一些背景,今天我看到了这条推文:

enter image description here

链接to this video

我想知道如何制作动画,我能想到的最佳方式是:

状态栏的屏幕截图,黑色文字颜色插入真实状态栏(白色),然后慢慢显示真实状态栏。

正如@Edgar所证实的那样,他们在视频中的确是这样做的(如果你在时间变化的时候将手指放在屏幕上,就可以看到它)。

但是,这个解决方案还不够好,因为在此期间,状态栏可能会发生变化,并且可能会变得有点令人毛骨悚然。

有没有办法在没有屏幕截图的情况下做到这一点?

2 个答案:

答案 0 :(得分:1)

当您开始滑动时,它会显示状态栏的屏幕截图并将其置于真实状态栏的顶部,然后将其更改为样式UIStatusBarStyleLightContentUIStatusBarStyleDefault

你可以清楚地看到这个,如果你玩它并开始滑动手势但不释放它,不仅在一分钟后,时钟变得过时,但如果你碰巧在activityIndi​​cator打开时开始滑动,你&#39 ;看到它保持静止。

不幸的是,据我所知,没有办法获得两个状态栏,两者都有正确的信息。也许如果你能想出一种不断截取真实屏幕截图并动态反转颜色的方法,但这样做会很昂贵,性能明智。

答案 1 :(得分:0)

  

我知道状态栏颜色取决于附近的视图   状态栏。

     

如果它已连接到导航栏,则状态栏将显示   导航栏的颜色。

     

如果隐藏导航栏,则接近状态的顶视图   栏,状态栏采取颜色。