没有appcompat的Android更改状态栏颜色
Posted
技术标签:
【中文标题】没有appcompat的Android更改状态栏颜色【英文标题】:Android change Status Bar Color without appcompat 【发布时间】:2015-01-02 06:25:28 【问题描述】:我刚刚意识到,在 Lollipop 以下的 android 版本上,无法通过 appcompat 更改状态栏颜色。 我目前正在运行 Android Kitkat 4.4.2 并收到了应用程序的更新,这是屏幕截图
我的问题是,他们是如何在运行低于 Lollipop 版本的设备上不使用 appcompat 的情况下更改状态栏颜色的?
如何改变颜色?
【问题讨论】:
看看本教程:murrayc.com/permalink/2014/10/28/… 编辑:对您的问题来说重要的是,您使用最新版本 (21) 中的 appcompat 库。你可以在这里找到文档:developer.android.com/tools/support-library/… 我目前正在运行 Android 4.4.2 并且 twitch 应用程序以某种方式设法更改状态栏颜色,我只是想知道如何,因为通常它应该只在 Android Lollipop 中可用 @AlexLockwood :这个问题的公认答案最终是说无法通过 appcompat 更改状态栏颜色。我有一个更改状态栏颜色的应用程序,想知道它是如何实现的 Twitch 正在使用 kit kat api 来实现该效果。它使状态栏变得半透明......它实际上并没有设置它的颜色。 @AlexLockwood 是正确的。您实际上无法更改状态栏的颜色,但您可以在下方绘制。 【参考方案1】:无法通过设置 colorPrimaryDark 来更改 Lollipop(5.0) 之前的状态栏颜色。
在旧平台上,AppCompat 会尽可能模拟颜色主题。目前这仅限于为操作栏和一些小部件着色。
见this
另见this
【讨论】:
如何实现呢?感谢回复【参考方案2】:我已经使用这个库来更改我的应用程序中的状态栏颜色。对我来说,它已经引起了复杂性,所以在你使用它之前仔细测试你的 UI,但它为 KitKat 完成了这项工作。据我所知,在 OS 19 之前无法更改系统栏颜色。
https://github.com/jgilfelt/SystemBarTint
【讨论】:
以上是关于没有appcompat的Android更改状态栏颜色的主要内容,如果未能解决你的问题,请参考以下文章