【Interfacenavigation】隐藏导航栏(52)
原
本课程介绍如何隐藏Android 4.0(API级别14)中引入的导航栏。
尽管本课程重点介绍隐藏导航栏,但您应该将应用程序设计为同时隐藏状态栏,如隐藏状态栏中所述。隐藏导航和状态栏(同时仍然可以随时访问它们)使内容使用整个显示空间,从而提供更加身临其境的用户体验。
图1.导航栏。
隐藏导航栏
您可以使用SYSTEM_UI_FLAG_HIDE_NAVIGATION标志隐藏导航栏 。此代码段隐藏了导航栏和状态栏:
View decorView = getWindow().getDecorView();
// Hide both the navigation bar and the status bar.
// SYSTEM_UI_FLAG_FULLSCREEN is only available on Android 4.1 and higher, but as
// a general rule, you should design your app to hide the status bar whenever you
// hide the navigation bar.
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION| View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);
请注意以下事项:
使用此方法,触摸屏幕上的任何位置都会导致导航栏(和状态栏)重新出现并保持可见状态。用户交互导致标志被清除。
清除标志后,如果要再次隐藏栏,则应用程序需要重置它们。有关如何监听UI可见性更改的讨论,请参阅响应UI可见性更改,以便您的应用可以相应地做出响应。
你设置UI标志的地方有所不同。如果您在活动的onCreate()方法中隐藏系统栏 并且用户按下Home,系统栏将重新出现。当用户重新打开活动时,onCreate() 将不会被调用,因此系统栏将保持可见。如果您希望系统UI更改在用户导入和导出活动时保持不变,请在onResume() 或中设置UI标记 onWindowFocusChanged()。
setSystemUiVisibility()只有在您调用它的视图可见时,该方法才有效。
导航远离视图会导致标记设置setSystemUiVisibility() 被清除。
使内容出现在导航栏后面
在Android 4.1及更高版本中,您可以将应用程序的内容设置为显示在导航栏后面,以便在导航栏隐藏和显示时不会调整内容的大小。为此,请使用 SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION。您可能还需要使用它 SYSTEM_UI_FLAG_LAYOUT_STABLE来帮助您的应用程序保持稳定的布局。
当您使用这种方法时,您有责任确保应用程序UI的关键部分最终不会被系统栏覆盖。有关此主题的更多讨论,请参阅 隐藏状态栏课程。
联系我
QQ:94297366
微信打赏:https://pan.baidu.com/s/1dSBXk3eFZu3mAMkw3xu9KQ
转载于:https://blog.51cto.com/4789781/2163688
【Interfacenavigation】隐藏导航栏(52)相关推荐
- 【仿去哪儿】滑动隐藏导航栏
仿照去哪儿,隐藏导航栏(其实是设置为透明背景):向下滑动到时,当顶部图片看不见时,显示导航栏,源代码下载,效果如下: 主要思想:就是监听UITableView的滑动事件,当UITableView滑动一 ...
- iOS 隐藏导航栏整个视图上移闪屏问题
2019独角兽企业重金招聘Python工程师标准>>> 在iOS开发中,特别是一些首页展示上要去掉导航栏(UINavigationBar). 最简单的办法在- (void)viewW ...
- 全面屏适配方案,终极版,华为隐藏导航栏解决方案
全面屏适配方案,终极版,华为隐藏导航栏解决方案 参考文章: (1)全面屏适配方案,终极版,华为隐藏导航栏解决方案 (2)https://www.cnblogs.com/lizhanqi/p/93371 ...
- 去除导航栏的背景色和底部1像素黑色线条or隐藏导航栏
一般项目我们都用创建一个公用的导航控制器,然后定义我们所需要的一些按钮啊 样式啊 等 - (void)pushViewController:(UIViewController *)viewContro ...
- 全志 强制隐藏导航栏状态栏 Patch
modify 隐藏导航栏状态栏diff --git a/android/frameworks/base/core/res/res/values/dimens.xml b/android/framewo ...
- 隐藏导航栏或返回按钮
1 - (void)viewWillAppear:(BOOL)animated 2 { 3 [super viewWillAppear:animated]; 4 [self.navigationCon ...
- 19款探岳刷隐藏教程_三星S10系列如何隐藏导航栏 官微“手把手”教你设置
三星于2月28日在乌镇正式发布国行版三星S10系列手机,无论是出色的外观设计,还是超强的性能,亦或是优秀的三摄成像,无不受到消费者的喜爱.但是,有消费者在使用三星S10系列搭载的One UI时却遇到了 ...
- Android9.0 完全隐藏导航栏、状态栏
需求:自定义界面全屏显示,隐藏导航栏,状态栏 按照google的官方办法,设置如下几个Flag就可以隐藏导航栏: View decorView = getWindow().getDecorView() ...
- 微信h5隐藏导航栏和状态栏_导航栏未在SwiftUI中隐藏
微信h5隐藏导航栏和状态栏 TL;DR: If you can't tap on buttons in the navigation-bar area, you can jump directly t ...
- MTK隐藏导航栏,去掉下拉,永不锁屏,永不灭屏
MTK隐藏导航栏 修改全局属性, 有兴趣的可以全局搜索这个属性,在systemui以及framework中好像都有写 qemu.hw.mainkeys=1 MTK去掉下拉通知 这里去掉添加的view, ...
最新文章
- BAT集体告别中台上半场!接下来,中台怎么玩?
- linux桌面lxde 安装_Ubuntu 18.04下安装Lxde轻量桌面系统和VNC服务器
- 开灯问题 简单模拟法
- JVM 内存模型:方法区(Method Area)
- Linux提高工作效率的命令
- 三大公有云托管 Kubernetes 服务 (EKS、GKE、AKS) 评估
- matlab2c使用c++实现matlab函数系列教程-rank函数
- 计算机房通气换气次数,各种换气次数汇总
- Linux常用编程工具
- 职称评审需要满足的条件
- Java 并发编程:轻量级锁和偏向锁详解
- word2019如何删除段落文字带颜色的背景
- 百度地图开发(一)----项目准备
- openlayers实现地图显示功能
- 数学建模【规划模型--线性规划(整数规划、0-1规划)、非线性规划-附:案例分析、奶制品的生产和销售(详细求解过程)】
- OpenCV显示中文字体
- 编写程序FooBizBaz.java,从1循环到150并且在每行打印一个值,另外在每个3的倍数行上打印出“foo”,在每个5的倍数行上打印“biz”,在每个7的倍数行上打印输出“baz”。
- Golang包管理工具(三)之dep的使用
- C/S,B/S与P2P架构
- c语言倍增算法,用倍增公式选股
热门文章
- Atitit 人工智能体系树培训列表应用较为广泛的技术.docx Atitit 人工智能体系培训列表 目录 1. 1.NLP自然语言处理文本处理	2 1.1. 语言理解 分词	2 1.2. 抽取
- Atiitt 使用java语言编写sql函数或存储过程
- atitit。win7 win8 win9 win10 win11 新特性总结与战略规划
- Atitit.软件仪表盘(7)--温度监测子系统--电脑重要部件温度与监控and警报
- paip. c++ 调用.net dll 最好方式powershell 使用总结.
- PAIP.MYSQL设置远程账户登陆总结
- 趋势 | 或许,这就是大佬吧!——美国ETF产业三巨头格局浅谈
- (转)《精通比特币》原码分析: select_utxo
- (转) hash 函数及其重要性
- 阿里云 Link ID² 标准项目获浙江省标准创新重大贡献奖