ios - 随着 View 的变化实时更新状态栏文本颜色

标签 ios objective-c swift uikit

这可能是一个新手问题,但我注意到新的 Apple Music 应用程序中有一些有趣的地方。从一个 View 切换到另一个 View 时,状态栏文本颜色似乎会实时更改,而不是在加载下一个 View 时立即更改。

查看此屏幕录像以了解我的意思: http://f.cl.ly/items/2A0a3Q3i2O2d2O3u3q1m/statusBar_1.mp4

特写:http://f.cl.ly/items/182r3n3Z1m1y0y1W0j2J/statusBar_2.mov

我怎样才能达到同样的效果?例如,当以模态方式转换到另一个 View Controller 时,我如何让状态栏样式像这样动态更改而不是在下一个 View 加载时更改?有可能吗? Apple 是否使用了一些私有(private) API,或者它只是我缺少的一个非常简单的技巧?对不起,如果这是一个初学者问题,但我认为我从未见过其他应用程序这样做过。

最佳答案

什么都不缺——绝对没有 API 可以做到这一点。我见过几个第三方应用程序做类似的事情,可能是通过找到状态栏窗口,对其进行快照,然后对结果图像做一些巧妙的事情,但这非常脆弱。一如既往,如果你想要某个 API,你应该 file an enhancement request .

关于ios - 随着 View 的变化实时更新状态栏文本颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31165979/

相关文章:

iphone - 如何从 iOS 主线程上的 UIProgressBar 更新

ios - 初始化两个元组的数组失败

iphone - 是什么决定了状态栏中是否存在 iPhone 定位服务图标?

ios - 避免使用我指定的符号以外的符号

objective-c - 如何在xcode中组织资源

ios - 如何使用 3D 对象创建等距图 block map

ios - 如何使用 Swift 4 设置 UITextField 边框从左到右带有圆角的渐变

ios - NSNotificationCenter 偶发性崩溃

ios - SwiftUI:导航栏不会填满 iPhone X 和更新设备的屏幕顶部

ios - Swift:禁用 UITableViewCell 上的触摸