关于 Android 状态栏的适配总结

实现android状态栏的适配和样式调整需要根据不同的android版本采用不同的方法,以下是详细的说明和示例:

沉浸式状态栏:使内容布局延伸到系统状态栏,实现透明效果。

Android 5.0及以后版本:通过设置属性

View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN

,内容布局可以延伸到系统状态栏。然后使用

setStatusBarColor()

方法将系统状态栏设置为透明。

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);getWindow().setStatusBarColor(Color.TRANSPARENT);

Android 4.4 ~ Android 5.0:使用

getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS)

使状态栏透明,并使内容布局延伸到系统状态栏。此方法在Android 5.0及以后版本上也可以使用,但效果不理想。

getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);

Android 4.4之前:不支持透明状态栏。

注意:在设置透明状态栏时,内容布局需要延伸到状态栏,因此使用

fitSystemWindows

属性会导致奇特效果。

状态栏颜色与布局颜色搭配:不延伸内容布局到系统状态栏,只需调整状态栏颜色以匹配内容布局。

Android 5.0及以后版本:使用

setStatusBarColor()

方法或修改

colorPrimaryDark

的颜色来设置状态栏颜色。

getWindow().setStatusBarColor(Color.parseColor("#YOUR_COLOR"));

Android 4.4 ~ Android 5.0:虽然不能直接修改状态栏颜色,但可以通过设置状态栏透明,然后为内容布局添加一个合适颜色的padding来模拟状态栏颜色。

getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);// 在布局中为根布局或Toolbar设置padding和背景颜色

Android 4.4之前:不支持修改状态栏颜色。

状态栏的适配主要关注上述两点,针对不同Android版本使用相应的方法,避免混用以防出现奇特效果。

效果图:

关于 Android 状态栏的适配总结Android4.4以下.png

BibiGPT-哔哔终结者 BibiGPT-哔哔终结者

B站视频总结器-一键总结 音视频内容

BibiGPT-哔哔终结者 28 查看详情 BibiGPT-哔哔终结者

关于 Android 状态栏的适配总结Android4.4透明no.png

LinearLayout使用

fitsSystemWindows

属性:

关于 Android 状态栏的适配总结Android4.4透明toolbar-yes.png

ToolBar设置

fitsSystemWindows

效果:

关于 Android 状态栏的适配总结Android4.4透明toolbar-yes.png

Android 5.0及以后版本的新增功能:

可以直接操作状态栏颜色。

Android 6.0的新增功能:

可以更改状态栏字体颜色。默认是白色,可以修改为黑色。

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);

关于

fitSystemWindows

方法

// 当insets视图插入,window已经更改了,视图层次结构调用。允许它调整内容来适应这些窗口。fitSystemWindows(Rect insets);

此方法用于处理系统视图插入时对内容布局的影响,通常在使用

SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN

SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

时需要处理,以确保内容布局正确显示。

以上就是关于 Android 状态栏的适配总结的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/592612.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月10日 16:35:54
下一篇 2025年11月10日 16:36:45

相关推荐

发表回复

登录后才能评论
关注微信