Talk is cheap, show me the code.

--Linus Torvalds

Okay, here:

一、导航栏:

[java] view plain copy
  1. private void hideNavigationBar() {
  2. View decorView = getWindow().getDecorView();
  3. int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
  4. | View.SYSTEM_UI_FLAG_FULLSCREEN;
  5. decorView.setSystemUiVisibility(uiOptions);
  6. }
  7. private void showNavigationBar() {
  8. View decorView = getWindow().getDecorView();
  9. int uiOptions = View.SYSTEM_UI_FLAG_VISIBLE;
  10. decorView.setSystemUiVisibility(uiOptions);
  11. }

相关:

SYSTEM_UI_FLAG_VISIBLE——显示状态栏和导航栏

SYSTEM_UI_FLAG_LOW_PROFILE——此模式下,状态栏的图标可能是暗的

SYSTEM_UI_FLAG_HIDE_NAVIGATION——隐藏导航栏

SYSTEM_UI_FLAG_FULLSCREEN——全屏,隐藏状态栏和导航栏

SYSTEM_UI_FLAG_LAYOUT_STABLE

SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN——全屏,隐藏导航栏,状态栏浮在布局上。

SYSTEM_UI_FLAG_IMMERSIVE——沉浸式:半透明的状态栏和导航栏

SYSTEM_UI_FLAG_IMMERSIVE_STICKY——粘性沉浸式

二、状态栏:

[java] view plain copy
  1. private void setStatusBarVisible(boolean show) {
  2. if (show) {
  3. int uiFlags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE;
  4. uiFlags |= 0x00001000;
  5. getWindow().getDecorView().setSystemUiVisibility(uiFlags);
  6. } else {
  7. int uiFlags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE
  8. | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
  9. | View.SYSTEM_UI_FLAG_FULLSCREEN;
  10. uiFlags |= 0x00001000;
  11. getWindow().getDecorView().setSystemUiVisibility(uiFlags);
  12. }
  13. }

三、导航栏和状态栏

[java] view plain copy
  1. private void setSystemUIVisible(boolean show) {
  2. if (show) {
  3. int uiFlags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE;
  4. uiFlags |= 0x00001000;
  5. getWindow().getDecorView().setSystemUiVisibility(uiFlags);
  6. } else {
  7. int uiFlags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE
  8. | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
  9. | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
  10. | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
  11. | View.SYSTEM_UI_FLAG_FULLSCREEN;
  12. uiFlags |= 0x00001000;
  13. getWindow().getDecorView().setSystemUiVisibility(uiFlags);
  14. }
  15. }

Android 动态隐藏显示导航栏,状态栏的更多相关文章

  1. iOS 隐藏/显示导航栏

    一.隐藏导航栏 [self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBa ...

  2. [置顶] xamarin android Fragment实现底部导航栏

    前段时间写了篇关于Fragment的文章,介绍了基础的概念,用静态和动态的方式加载Fragment  Xamarin Android Fragment的两种加载方式.下面的这个例子介绍xamarin ...

  3. iOS UITableView表视图滚动隐藏UINavigationController导航栏

    UITableView 继承于UIScrollView 所以UIScrollView 的代理方法相同适用于UITableView 中 隐藏导航栏的方法为: self.navigationControl ...

  4. uni-app动态修改顶部导航栏标题

    动态修改顶部导航栏标题有两种方法方式一.使用自定义到导航栏,覆盖原生导航栏 缺点:自定义到导航栏性能远远不如原生导航栏,手机顶部状态栏区域会被页面内容覆盖,这是因为窗体是沉浸式的原因,即全屏可写内容: ...

  5. 导航栏 & 状态栏覆盖

    当 automaticallyAdjustsScrollViewInsets 为 YES 时,也是默认行为,表现就比较正常了,和 edgesForExtendedLayout = UIRectEdge ...

  6. C#使用Windows API 隐藏/显示 任务栏 (FindWindowEx, ShowWindow)

    原文 C#使用Windows API 隐藏/显示 任务栏 (FindWindowEx, ShowWindow) 今天,有网友询问,如何显示和隐藏任务栏? 我这里,发布一下使用Windows API 显 ...

  7. 极简操作无需root隐藏S8导航栏和状态栏

    距离三星Galaxy S8国行发布快一个礼拜了,相信论坛不少小同伴已经拿到手,许多人和我一样被那块全视曲面屏给诱惑剁手的,当拿到手把玩一段时间后却發现这么美的一块屏幕居然大部分应用上下都有一行碍眼的状 ...

  8. iOS---实现简书和知乎的上滑隐藏导航栏下拉显示导航栏效果

    因为自己用简书和知乎比较多,所以对其导航栏的效果比较好奇,自己私下里找资料实现了一下.这个效果的关键点在于下方可供滑动的内容的便宜距离inset的改变,以及滑动的scrollview代理的执行,废话不 ...

  9. Android UI-仿微信底部导航栏布局

    现在App基本的标配除了侧滑菜单,还有一个就是底部导航栏,常见的聊天工具QQ,微信,购物App都有底部导航栏,用户可以随便切换看不同的内容,说是情怀也好,用户体验也罢.我们开发的主要的还是讲的是如何如 ...

随机推荐

  1. Xcode中的Project和Target

    新创建工程(如下图e.g.),APP的属性包括了 PROJECT 和 TARGETS 两块内容.且一个工程只有一个 PROJECT,但可以有一个或多个 TARGETS(从苹果的命名上也可以看出,这个 ...

  2. C# 用qq邮箱发邮件

    一.在企业的QQ邮箱中开启POP3/SMTP服务 开启服务时,授权密码保存好. 二.示例 public static string UserName = ""; // 企业邮箱 p ...

  3. 函数的扩展——箭头函数this的使用

    箭头函数中的this指向的是定义时的this,而不是执行时的的this . 举例: 案例中,我们的obj对象中有一个属性x和一个属性show( )方法,show( )通过this打印出x的值,结果是u ...

  4. ubuntu 16.04 + 中文输入法

    在桌面右上角设置图标中找到"System Setting",双击打开. 在打开的窗口里找到"Language Support",双击打开. 可能打开会说没有安装 ...

  5. tensorflow目标检测API之训练自己的数据集

    1.训练文件的配置 将生成的csv和record文件都放在新建的mydata文件夹下,并打开object_detection文件夹下的data文件夹,复制一个后缀为.pbtxt的文件到mtdata文件 ...

  6. MySQL在windows上的安装步骤

    参考文章MySQL安装及建议:https://zhuanlan.zhihu.com/p/44977117 但在进入mysql中修改root命令时,使用文章中的命令: ALTER USER 'root' ...

  7. 笔记--Day1--python基础1

    一.目录 1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum),目前已经是使用频度特别高的开发语言. 主要应用领域: 云计算:云计算最火的语言,典型应用有Op ...

  8. svn提交报错,提示:locked,需要cleanup

    版权声明:本文为博主原创文章,未经博主允许不得转载. 原文地址: https://www.cnblogs.com/poterliu/p/9285137.html 在使用SVN提交代码或更新代码时经常会 ...

  9. 【js】【vue】获取当前dom层

    多层嵌套,$event.currentTarget 指当前点击层

  10. python爬取+使用网易卡搭作品数量api

    第一步,当然是打开浏览器~ 然后打开卡搭~ 看着熟悉的界面,是不是有点不知所措? 这就对了,咱找点事情干干. 随便找个倒霉蛋,比如这位:"混世大王",打开他的主页! 按下f12(我 ...