Android 实现顶部状态栏的沉浸模式(任意设置状态栏的颜色)

Android 实现顶部状态栏的沉浸模式(任意设置状态栏的颜色)

第一步、创建WindowsUtils工具类

public class WindowsUtils {
}

第二步、编写静态方法 setStatusBarColor

@RequiresApi(api = Build.VERSION_CODES.N)
public static void setStatusBarColor(Window window, Resources resources, int id){
//After LOLLIPOP not translucent status bar
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
//Then call setStatusBarColor.
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(resources.getColor(id));
}

第三步、添加声明,并在Activity中测试

@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设置状态栏背景色
WindowsUtils.setStatusBarColor(getWindow(),getResources(),R.color.login_bg_color);
// 选择布局文件
setContentView(R.layout.activity_main);
}
posted @   触碰A阳光  阅读(462)  评论(1编辑  收藏  举报
编辑推荐:
· Linux系统下SQL Server数据库镜像配置全流程详解
· 现代计算机视觉入门之:什么是视频
· 你所不知道的 C/C++ 宏知识
· 聊一聊 操作系统蓝屏 c0000102 的故障分析
· SQL Server 内存占用高分析
阅读排行:
· 盘点!HelloGitHub 年度热门开源项目
· DeepSeek V3 两周使用总结
· 02现代计算机视觉入门之:什么是视频
· C#使用yield关键字提升迭代性能与效率
· 2. 什么?你想跨数据库关联查询?
点击右上角即可分享
微信分享提示