APP开发实战166-全屏模式的功能设计
来源:互联网 发布:双立人珐琅铸铁锅 知乎 编辑:程序博客网 时间:2024/06/04 19:18
30.14 全屏模式的功能设计
APP的许多场景需要全屏展示内容,如播放视频、浏览图片和阅读书籍时等场景。从Android4.4开始,Android系统提供了2种方案让APP进入全屏模式:Lean Back和Immersive。使用这2种方案时,Action Bar、Status Bar和Navigation Bar都会被隐藏,不同之处在于让它们再重新显示出来的操作方式。
30.14.1 Lean Back
这种方案常用于用户不会与屏幕大量交互的场景,如用户播放视频时。使用这种方法,如用户需要显示Action Bar、Status Bar和Navigation Bar时,点击屏幕的任何地方,Action Bar、Status Bar和Navigation Bar都会被显示。示意图如下:
实现代码:
View flagsView =getWindow().getDecorView();
int uiOptions = flagsView.getSystemUiVisibility();
uiOptions |= View.SYSTEM_UI_FLAG_FULLSCREEN;
uiOptions |= View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
uiOptions &= ~View.SYSTEM_UI_FLAG_IMMERSIVE;
flagsView.setSystemUiVisibility(uiOptions);
30.14.2 Immersive
这种方案常用于用户与屏幕大量交互的场景,如玩游戏、在画廊中浏览图片或阅读书籍时。使用这种方法,如用户需要显示Action Bar、Status Bar和Navigation Bar时,需要使用手指从屏幕底部向上滑动,或从屏幕顶部向下滑动,这样Action Bar、Status Bar和Navigation Bar才会被显示。示意图如下:
这种方案可以避免用户无意中碰到屏幕,就退出全屏模式的情况发生。但这样可能导致有些用户不知道怎样退出全屏模式,所以最好在用户使用APP第一次进入全屏模式时,给用户提示怎样才能退出全屏模式。
实现代码:
View flagsView =getWindow().getDecorView();
int uiOptions = flagsView.getSystemUiVisibility();
uiOptions |= View.SYSTEM_UI_FLAG_FULLSCREEN;
uiOptions |= View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
uiOptions |= View.SYSTEM_UI_FLAG_IMMERSIVE;
flagsView.setSystemUiVisibility(uiOptions);
- APP开发实战166-全屏模式的功能设计
- APP开发实战168-APP快捷图标的功能设计
- APP开发实战128-APP Log功能设计
- APP开发实战136-APP常用功能设计
- APP开发实战167-开机自启动的功能设计
- APP开发实战137-WebView功能设计
- APP开发实战134-APP版本更新功能设计
- APP开发实战150-Android 提示功能设计(AlertDialog、Toast和Snackbar的使用)
- 移动APP开发功能设计
- chrome的APP模式与全屏模式 --app --kiosk
- APP的注册和登录功能设计
- APP开发实战59-Activity启动模式
- App后台开发运维和架构实践学习总结(4)——APP的注册和登录功能设计
- Android app设置全屏模式
- app 新手引导功能设计
- APP开发实战70-服务的生命周期
- APP开发实战159-广播的安全性
- APP开发实战161-图片格式的选择
- Hadoop 在分机上启动常见问题
- SpringMVC学习(5): RequestParam 注解
- c++类型转换
- C++顺序性容器、关联性容器与容器适配器
- Captcha Cracker(BNUOJ 同步赛)
- APP开发实战166-全屏模式的功能设计
- AngularJs学习笔记(3)--$scope中的$apply和$digest方法
- 网络接口层
- HTML中播放声音的方法汇总
- ubuntu下编写并运行第一个c语言程序
- LintCode 爬楼梯[转载]
- Python Windows文件操作
- Service之简单使用
- AngularJs学习笔记(4)--$scope里的$watch方法