android上层广播的应用非常强大,关于android导航栏隐藏及显示,总结如下:
framework下grep广播字符串“com.android.systembar.hide”
这里进行广播接收,判断是隐藏或显示,然后去执行(mBroadcastReceiver方法下)
SYSTEMUI_HIDEBAR_ACTION添加如下:
removeBar()函数如下:
addBarInside()函数如下:
上面即是导航栏隐藏和显示的执行代码,下面看看设置里如何运行的
packages下grep广播字符串“com.android.systembar.hide”
如下:
如果提示getContentResolver()未定义,可以使用mContext.getContentResolver()
如果提示未识别Settings.System.ALWAY_HIDE_STATUSBAR,可以使用字符串“alway_hide_statusbar”代替
头文件import android.provider.Settings
注意权限问题
上面是设置---显示---隐藏状态栏的实现,若想在别的地方随意执行,参考如下: