WindowManager.LayoutParams(上)

本文参照自:http://developer.android.com/reference/android/view/WindowManager.LayoutParams.html

http://blog.sina.com.cn/s/blog_4b3c1f950100qd9s.html
公共静态类

WindowManager.LayoutParams

延伸   ViewGroup.LayoutParams
实现   Parcelable
java.lang.Object的
   ? android.view.ViewGroup.LayoutParams
     ? android.view.WindowManager.LayoutParams
 WindowManager.LayoutParams是窗口管理器接口的嵌套类,它继承于ViewGroup.LayoutParams;它用于向窗口管理器,描述窗口的管理策略。
主要成员常量
窗口标志系列
WindowManager.LayoutParams对象,然后直接对它标志变量操作,也可以窗口的addFlags(旗)方法,setFlags(INT标志,诠释面罩)方法,clearFlags(标志)方法进行操作。
比如设置全屏
 窗口窗口= getWindow(); 
 WindowManager.LayoutParams winParams = win.getAttributes();
  winParams.flags = winParams.flags | WindowManager.LayoutParams.FLAG_FULLSCREEN  ;
 或
 window.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
 或
 window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN); 
 取消全屏
 窗口窗口= getWindow(); 
 winParams.flags = winParams.flags〜WindowManager.LayoutParams.FLAG_FULLSCREEN;
 或
  window.clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
 或
window.setFlags(0,WindowManager.LayoutParams.FLAG_FULLSCREEN);
所有窗口标志如下:
诠释 FLAGS_CHANGED 用于表示的标志发生了变化,关于此的详细内容请看后文。
诠释 FLAG_ALLOW_LOCK_WHILE_SCREEN_ON 窗口标志:只要这个窗口是用户可见,让锁屏激活屏幕上时,
当该窗口对用户可见的时候,允许锁屏。
诠释 FLAG_ALT_FOCUSABLE_IM 窗口标志:反转状态  FLAG_NOT_FOCUSABLE的  
这个窗口如何与当前方法。
诠释 FLAG_BLUR_BEHIND 这个窗口后面的窗口标志:模糊的一切
让该窗口后所有东西都模糊(模糊)
诠释 FLAG_DIM_BEHIND 窗口标志:这个窗口后面的一切都将变暗。
让该窗口后所有的东西都成暗淡(点心)
诠释 FLAG_DISMISS_KEYGUARD 窗口标志:设置窗口时会导致键盘锁被解雇,  
只有当它是不是一个安全锁键盘锁。
诠释 FLAG_DITHER 窗口标志:开启抖动合成时,这个窗口到
屏幕上。开启抖动(抖动)
诠释 FLAG_FORCE_NOT_FULLSCREEN 恢复窗口 窗口标志:覆盖{@链接#FLAG_FULLSCREEN
和强制显示屏幕装饰(如状态栏)。非全屏显示
诠释 FLAG_FULLSCREEN 窗口标志:隐藏所有屏幕装饰品(如
窗口进行全屏显示
诠释 FLAG_HARDWARE_ACCELERATED

表示此窗口是否应该是硬件加速。

对该窗口进行硬件加速。

该标志必须在设置你的活动或对话框的内

容视图之前进行设置,

而且如果你在mainfest文件中

android:hardwareAccelerated开启了

该属性的话,那么你在程序中就不能再改变它。

mainfest文件中android:hardwareAccelerated属性默

认是开启的("true")。

诠释 FLAG_IGNORE_CHEEK_PRESSES 窗口标记符:用于将经常被用于当用户对
他们的脸的屏幕的窗口,将积极地过滤的
事件流,在这种情况下,可能不是所期望的
一个特定的窗口,以防止意外按压,当这样
的事件检测到流,应用程序将收到一个CANCEL
运动事件表明这样的应用程序可以处理相应的事
件上不采取行动,直到手指被释放。
诠释 FLAG_KEEP_SCREEN_ON 窗口标志:只要这个窗口是用户可见,
保持设备的屏幕打开和明亮的,当该窗口
对用户可见时,让设备屏幕处于高亮(
状态。

诠释 FLAG_LAYOUT_INSET_DECOR 窗口标志:一个特殊的选项仅用于
结合  FLAG_LAYOUT_IN_SCREEN的
诠释 FLAG_LAYOUT_IN_SCREEN 窗口标志:在整个屏幕上的窗口,
无视周围的边框装饰(又名窗口
满整个手机屏幕,不留任何边界(境)

诠释 FLAG_LAYOUT_NO_LIMITS 窗口标志:允许以外的窗口,延长
诠释 FLAG_NOT_FOCUSABLE 窗口标志:这个窗口将不会获得输入
焦点的关键,因此用户不能发送键或其
他按键事件
诠释 FLAG_NOT_TOUCHABLE 窗口标志:这个窗口永远不能接收
触摸事件让该窗口不接受触摸屏事件。
诠释 FLAG_NOT_TOUCH_MODAL 窗口标志:即使当这个窗口可调焦
({@#FLAG_NOT_FOCUSABLE的没有设置),  
允许任何指针事件被发送到窗外的窗户后面
诠释 FLAG_SCALED 窗口标记:一个特殊的模式的布局参数
合成在屏幕上时,它被用来执行缩放表面。
诠释 FLAG_SECURE 窗口标志:不允许此窗口显示屏幕截
图,而当该窗口在进行显示的时候,不允
许截屏。

诠释 FLAG_SHOW_WALLPAPER 窗口标志:要求显示系统壁纸背后的窗
口,在该窗口后显示系统的墙纸(壁纸)
诠释 FLAG_SHOW_WHEN_LOCKED 窗口标志:特殊标志,让窗口显示
屏幕被锁定时,当锁屏的时候,显示
窗口。
诠释 FLAG_SPLIT_TOUCH 窗口标志:当设置窗口将接受其边界之外的触
摸事件被发送到其他窗口,也支持触摸分割。
当这个标志没有设置,第一个指针,停机确定
窗口,所有后续倒是去,直到所有的指针上去。
当此标志设置,每个指针(不一定是第一个),
停机确定窗口,所有后续触及该指针将去,直
到该指针上升从而使涉及多个指针被分割在多
个 触摸
诠释 FLAG_TOUCHABLE_WHEN_WAKING 窗口标志:设置时,如果设备是睡着了,
当按下触摸屏,你会收到这个第一触摸
诠释 FLAG_TURN_SCREEN_ON 窗口标志:设置为一个窗口时,被添加
或可见,一旦窗口已显示,然后系统会
捅电源管理器的用户活动(如果用户唤
醒设备)打开屏幕
诠释 FLAG_WATCH_OUTSIDE_TOUCH 窗口标志:如果您已设置  FLAG_NOT_TOUCH_MODAL
你可以设置这个标志接收一个特殊MotionEvent用
行动  MotionEvent.ACTION_OUTSIDE 
的触动你的外面发生
softInputMode系列
该系列主要用于表示softInputMode,我们可以通过WindowManager.LayoutParams的softInputMode变量直接进行设置。 softInputMode只能是一个显示软键盘时的window调整方式bite与一个控制软键盘显示状态的bite的组合。
显示软键盘时的窗口调整方式可以是 SOFT_INPUT_ADJUST_NOTHING  SOFT_INPUT_ADJUST_PAN
SOFT_INPUT_ADJUST_RESIZE  SOFT_INPUT_ADJUST_UNSPECIFIED  之一。
用于描述软键盘显示的规则可以是 SOFT_INPUT_STATE_ALWAYS_HIDDEN SOFT_INPUT_STATE_ALWAYS_VISIBLE
SOFT_INPUT_STATE_HIDDEN的 SOFT_INPUT_STATE_VISIBLE  SOFT_INPUT_STATE_UNSPECIFIED  之一
关于softInputMode的更多知识请参考 “  软件盘的开关 “
所有的softInputMode系列常量如下:
诠释 SOFT_INPUT_ADJUST_NOTHING 调整选项  设置有一个窗口,调整图中
所示的输入法。softInputMode当显示
软键盘时,不调整窗口的布局

诠释 SOFT_INPUT_ADJUST_PAN 调整选项  softInputMode的:设置有一个
窗口油锅时,显示一个输入法,所以
它并不需要调整大小处理,但只是
平移,由框架,以确保当前的输入焦点
诠释 SOFT_INPUT_ADJUST_RESIZE 调整选项  设置为允许时调整大
小的窗口,显示输入法,其内容不
包括由输入softInputMode
诠释 SOFT_INPUT_ADJUST_UNSPECIFIED 调整选项  softInputMode:无指
不指定显示软件盘时,窗口的调
整方式。

诠释 SOFT_INPUT_IS_FORWARD_NAVIGATIONsoftInputMode位  :设置当
用户导航到窗口表示用户导航(导航)
到了你的窗口

诠释 SOFT_INPUT_MASK_ADJUST  这个窗口应该进行调整,以适
应软输入位确定 面膜  softInputMode



诠释 SOFT_INPUT_MASK_STATE 面膜为  softInputMode  位决定所需的
可见性状态的软输入区域窗口。用于描述
软键盘显示规则的咬的
面具
诠释 SOFT_INPUT_MODE_CHANGED 用于表示softInputMode发生了
变化。关于此的详细内容请看后文。
诠释 SOFT_INPUT_STATE_ALWAYS_HIDDEN Visibility状态为  softInputMode:  
请始终隐藏任何软输入区域,当
这个窗口接收焦点。总是隐藏软键盘。
诠释 SOFT_INPUT_STATE_ALWAYS_VISIBLE Visibility状态为  softInputMode
 请务必使软输入区域可见这个窗
口获得输入焦点时,总是显示软键盘。
诠释 SOFT_INPUT_STATE_HIDDEN Visibility状态为  softInputMode:  
请隐藏任何软输入区域,在正常情
况下(当用户浏览到你的窗口)。用户导航
(导航)到你的窗口的时候,隐藏软键盘

诠释 SOFT_INPUT_STATE_UNCHANGED Visibility状态为  softInputMode
请不要改变软输入区域的状态。
诠释 SOFT_INPUT_STATE_UNSPECIFIED Visibility状态为  softInputMode
无状态已指定
没有软键盘显示的约定规则
诠释 SOFT_INPUT_STATE_VISIBLE Visibility状态为  softInputMode
请出示软输入区域时,正常情况下  
(当用户浏览到你的窗口)。用户
导航(导航)到你的窗口的时候,显
示的软键盘

窗型系列
该系列主要用于表示 window 的类型。我们可以通过 WindowManager.LayoutParams type 变量直接进行设置.
诠释 TYPE_APPLICATION 窗口类型:一个正常的应用程序窗口。
普通的应用程序窗口,令牌必须设置为
活动的标记,以指出该窗口属谁

诠释 TYPE_APPLICATION_ATTACHED_DIALOG 窗口的类型:像  TYPE_APPLICATION_PANEL
但发生的窗口布局的顶层窗口,  而不是  其
作为一个孩子
诠释 TYPE_APPLICATION_MEDIA 窗口类型:窗口显示介质(例如媒体窗口,
例如视频显示于宿主窗口下层。

诠释 TYPE_APPLICATION_PANEL 窗口类型:一个应用程序窗口的顶部面板
上。面板窗口,显示于宿主窗口上层
诠释 TYPE_APPLICATION_STARTING 窗口类型:特殊的应用程序窗口时
显示的应用程序
诠释 TYPE_APPLICATION_SUB_PANEL 窗口类型:应用程序上的子面板
诠释 TYPE_BASE_APPLICATION 窗口类型:作为整体应用的“基地”窗口,
所有其他应用程序窗口的应用程序窗口
会出现在它的上面。所有程序窗口的“基
地”窗口,其他应用程序的窗口都显示在
它上面。 

诠释 TYPE_CHANGED 表示窗口的类型发生了变化,关于
此的详细内容请看后文。
诠释 TYPE_INPUT_METHOD 窗口类型:内部输入法窗口,出现高于正常
诠释 TYPE_INPUT_METHOD_DIALOG 窗口类型:内部输入法对话框窗口,显
示当前输入法窗口之上内部输入法对话框,
显示于当前输入法窗口之上。

诠释 TYPE_KEYGUARD 窗口类型:键盘锁窗锁屏窗口
诠释 TYPE_KEYGUARD_DIALOG 窗口类型:对话框,在键盘锁定显
锁屏时显示的对话框
诠释 TYPE_PHONE 窗口类型:
诠释 TYPE_PRIORITY_PHONE 窗口类型:优先级的手机用户
界面,需要显示,即使在键盘
锁定。电话优先,当锁屏时显示。
此窗口不能获得输入焦点,否则影
响锁屏。

诠释 TYPE_SEARCH_BAR 窗口类型:搜索栏搜索栏。只
能有一个搜索栏,它位于屏幕上方。

诠释 TYPE_STATUS_BAR 窗口类型:状态
诠释 TYPE_STATUS_BAR_PANEL 窗口类型:面板滑出在状态
状态栏的滑动面板
诠释 TYPE_SYSTEM_ALERT 窗口类型:系统窗口,如低功耗警
系统提示窗口,比如电池低的警告
它总是出现在应用程序窗口之上。

诠释 TYPE_SYSTEM_DIALOG 窗口类型:面板,从状态栏滑
系统对话框(例如音量调节框)
诠释 TYPE_SYSTEM_ERROR 窗口类型:内部系统错误窗口,
一切,他们可以出现在顶部。系统内
部错误提示,显示于所有内容之上

诠释 TYPE_SYSTEM_OVERLAY 窗口类型:系统叠加窗口,需
要显示一切之上
诠释 TYPE_TOAST 窗口类型:瞬时通知。敬酒类型的窗口
诠释 TYPE_WALLPAPER 窗口类型:壁纸窗口,  
放在后面的任何窗口,想
坐的壁纸上用于墙纸的窗口
窗口的类型被分为了3大类:
应用程序窗口  (介乎从  FIRST_APPLICATION_WINDOW  LAST_APPLICATION_WINDOW的 )是正常的顶层应用程序窗口。对于这些类型的窗口必须设置为活动的一部分(这通常会为你做的如果令牌是空的)令牌,令牌。
子窗口  (范围从   FIRST_SUB_WINDOW  LAST_SUB_WINDOW  )都与另一个顶层窗口。对于这些类型的窗户,令牌必须是它是连接到窗口的令牌。
系统窗口  (包括从   FIRST_SYSTEM_WINDOW  LAST_SYSTEM_WINDOW  )是由系统为特定目的而使用的特殊类型的窗口。通常他们不应该被使用的应用程序中,一个特殊的权限才能使用它们。
系统专门定义FIRST_APPLICATION_WINDOW  ,  LAST_APPLICATION_WINDOW , FIRST_SUB_WINDOW LAST_SUB_WINDOW,
FIRST_SYSTEM_WINDOW LAST_SYSTEM_WINDOW  以表示窗口的3大类型的类型的取值的范围。
诠释 FIRST_APPLICATION_WINDOW 开始代表正常的应用程序窗口的窗口类型。
恒定值:1(0X00000001
诠释 FIRST_SUB_WINDOW 启动类型的子窗口。
恒定值:1000(0x000003e8
诠释 FIRST_SYSTEM_WINDOW 启动系统特定的窗口类型。
恒定值:2000(0x000007d0
诠释 LAST_APPLICATION_WINDOW 结束类型的应用程序窗口。
恒定值:99(0x00000063
诠释 LAST_SUB_WINDOW 结束类型的子窗口。
恒定值:1999(0x000007cf
诠释 LAST_SYSTEM_WINDOW 结束类型的系统窗口。
恒定值:2999(0x00000bb7

//设置窗体全屏

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

 

//设置窗体始终点亮

getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON,

      WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

 

//设置窗体背景模糊

getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND,
                WindowManager.LayoutParams.FLAG_BLUR_BEHIND);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值