Android 导航栏、状态栏

本文介绍了如何在Android应用中通过setSystemUiVisibility()方法改变状态栏和导航栏的可见性,并提供了五个不同的参数选项。同时,文章详细讲解了如何获取状态栏和导航栏的高度,以及如何判断设备是否具有NavigationBar。对于获取高度的方法,文章提供了两个方法,而判断设备是否有NavigationBar则涉及到了额外的检查步骤。

1.setSystemUiVisibility(int visibility)

通过setSystemUiVisibility(int visibility)方法,可以改变状态栏或者其他系统UI的可见性。

getWindow().getDecorView().setSystemUiVisibility(int visibility);

可供选择的参数:

①View.SYSTEM_UI_FLAG_VISIBLE

默认模式,显示状态栏和导航栏

②View.SYSTEM_UI_FLAG_LOW_PROFILE

低调模式,隐藏不重要的状态栏图标,导航栏中相应的图标都变成了一个小点。点击状态栏或导航栏还原成正常的状态。

③SYSTEM_UI_FLAG_HIDE_NAVIGATION

隐藏导航栏,点击屏幕任意区域,导航栏将重新出现,并且不会自动消失。

④SYSTEM_UI_FLAG_FULLSCREEN

隐藏状态栏,点击屏幕区域不会出现,需要从状态栏位置下拉才会出现。

⑤SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

将布局内容拓展到导航栏和状态栏的后面。

 

2.获取状态栏、导航栏高度

①获取顶部状态栏statusBar高度

private int getStatusBarHeight() {

    Resources resources = mActivity.getResources();

    int resourceId = resources.getIdentifier( "status_bar_height", "dimen","android");

    int height = resources.getDimensionPixelSize( resourceId);

    Log

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值