动态设置全屏、取消全屏的方法,以及切换全屏保持内容位置不变的方法
来源:互联网 发布:杨振宁 知乎 编辑:程序博客网 时间:2024/06/07 07:10
有两种形式设置、取消全屏的方法,之所以称作两种形式而不是两种方法,是因为这两种方式只是写法不同,实质是一样的。
形式一:
//设置全屏
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
//取消全屏
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
形式二:
//设置全屏
WindowManager.LayoutParams attr = getWindow().getAttributes();
attr.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN;
getWindow().setAttributes(attr);
//取消全屏
WindowManager.LayoutParams attr = getWindow().getAttributes();
attr.flags &= (~WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().setAttributes(attr);
全屏状态改为非全屏保持内容位置不变:
getWindow().setFlags(
WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN,
WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR);
这里有一个问题:
当设置了该flag之后取消全屏,部分内容被状态栏挡住(忽略状态栏高度,以屏幕右上角为原点计算布局)
加上代码getWindow().clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);可以解决该问题,但再次设置全屏的时候状态栏不消失- 动态设置全屏、取消全屏的方法,以及切换全屏保持内容位置不变的方法
- 动态设置全屏、取消全屏的方法,以及切换全屏保持内容位置不变的方法
- android设置全屏以及解决设置全屏无效的方法
- 全屏的设置方法
- flash全屏方法以及保持某个影片剪辑尺寸不变
- Android设置全屏的方法
- Android设置全屏的方法
- Android设置全屏的方法
- anroid设置全屏的方法
- WPF设置全屏的方法
- Activity 设置全屏的方法 .
- 设置全屏无标题的方法
- Android设置全屏的方法
- vedioView设置全屏的方法
- Android设置全屏的方法
- WPF设置全屏的方法
- Android设置全屏的方法
- Android设置全屏的方法
- [LeetCode] Binary Search Tree Iterator
- 立体化监控
- MySQL Linux下二进制文件包安装mysql
- Linux内核设计与实现 学习笔记(1)定时器和时间管理
- 实验四
- 动态设置全屏、取消全屏的方法,以及切换全屏保持内容位置不变的方法
- Linux内核设计与实现 学习笔记(3)虚拟文件系统
- 程序员必修的中文MOOC汇总
- Netflix是怎么火起来的
- 4-2-1 循环控制-判断素数
- Linux内核设计与实现 学习笔记(4)块I/O层
- JBPM显示流程图
- C++类中使用表驱动
- 数据平台调度系统的设计