Android 动态设置全屏,退出全屏
2014-03-31 22:07
411 查看
让程序全屏的方法,大家都知道,那是静态的,程序运行之初就申明了。但是如果有这样的需求:要在程序运行的过程中,执行了某个操作而使之全屏,然后还需要退出全屏,怎么做?
如下:
修改window的LayoutParams参数,然后加上FLAG_LAYOUT_NO_LIMITS标志,就OK了。window会自动重新布局,呈现全屏的状态。
要退出全屏,只需要清除刚才加上的FLAG_FULLSCREEN参数,然后去掉FLAG_LAYOUT_NO_LIMITS标志。
如下:
全屏状态改为非全屏保持内容位置不变:
getWindow().setFlags(
WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN,
WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR);
如下:
WindowManager.LayoutParams attrs = getWindow().getAttributes(); attrs.flags |= WindowManager.LayoutParams.FLAG_FULLSCREEN; getWindow().setAttributes(attrs); getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
修改window的LayoutParams参数,然后加上FLAG_LAYOUT_NO_LIMITS标志,就OK了。window会自动重新布局,呈现全屏的状态。
要退出全屏,只需要清除刚才加上的FLAG_FULLSCREEN参数,然后去掉FLAG_LAYOUT_NO_LIMITS标志。
如下:
WindowManager.LayoutParams attrs = getWindow().getAttributes(); attrs.flags &= (~WindowManager.LayoutParams.FLAG_FULLSCREEN); getWindow().setAttributes(attrs); getWindow().clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
全屏状态改为非全屏保持内容位置不变:
getWindow().setFlags(
WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN,
WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR);
相关文章推荐
- Android 动态设置全屏,退出全屏
- Android 动态设置全屏,退出全屏
- Android 动态设置全屏,退出全屏
- android中动态实现全屏和动态退出全屏方法
- android中动态实现全屏和动态退出全屏方法
- Android动态的全屏和退出全屏
- 动态设置全屏,退出全屏
- Android动态全屏与退出全屏
- android 动态设置全屏
- 动态全屏设置 android
- android去标题栏与全屏,动态全屏与退出全屏
- android动态设置屏幕全屏
- 动态设置全屏,退出全屏
- Android动态全屏与退出全屏
- Android动态设置Margin的方法
- android 动态设置控件大小
- Android全屏设置及取消全屏设置
- 动态设置android:drawableLeft|Right|Top|Bottom
- Android 应用设置全屏方法
- android 全屏显示设置