Android动态的全屏和退出全屏

转自:http://chroya.iteye.com/blog/974031

让程序全屏的方法,大家都知道,那是静态的,程序运行之初就申明了。但是如果有这样的需求:要在程序运行的过程中,执行了某个操作而使之全屏,然后还需要退出全屏,怎么做?
    如下:
Java代码  
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标志。
    如下:
Java代码  
WindowManager.LayoutParams attrs = getWindow().getAttributes();  
attrs.flags &= (~WindowManager.LayoutParams.FLAG_FULLSCREEN);  
getWindow().setAttributes(attrs);  
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);  

 

posted on 2013-09-03 13:11  飘杨......  阅读(442)  评论(0编辑  收藏  举报