Most visited

Recently visited

Added in API level 1

WindowManager.LayoutParams

public static class WindowManager.LayoutParams
extends ViewGroup.LayoutParams implements Parcelable

java.lang.Object
   ↳ android.view.ViewGroup.LayoutParams
     ↳ android.view.WindowManager.LayoutParams


Summary

Inherited XML attributes

From class android.view.ViewGroup.LayoutParams

Constants

int ALPHA_CHANGED

int ANIMATION_CHANGED

float BRIGHTNESS_OVERRIDE_FULL

screenBrightnessbuttonBrightness表示当此窗口位于前面时,应将屏幕或按钮背光亮度设置为最高值。

float BRIGHTNESS_OVERRIDE_NONE

screenBrightnessbuttonBrightness默认值表示此窗口的亮度值未被覆盖,应使用正常的亮度策略。

float BRIGHTNESS_OVERRIDE_OFF

screenBrightnessbuttonBrightness表示当此窗口在前面时,应将屏幕或按钮背光亮度设置为最低值。

int DIM_AMOUNT_CHANGED

int FIRST_APPLICATION_WINDOW

代表正常应用程序窗口的窗口类型的开始。

int FIRST_SUB_WINDOW

子窗口类型的开始。

int FIRST_SYSTEM_WINDOW

开始系统特定的窗口类型。

int FLAGS_CHANGED

int FLAG_ALLOW_LOCK_WHILE_SCREEN_ON

窗口标志:只要该窗口对用户可见,允许锁定屏幕在屏幕开启时激活。

int FLAG_ALT_FOCUSABLE_IM

窗口标志:关于这个窗口如何与当前方法交互,反转状态 FLAG_NOT_FOCUSABLE

int FLAG_BLUR_BEHIND

此常数在API级别14中已弃用。不再支持模糊。

int FLAG_DIM_BEHIND

窗口标志:此窗口后面的所有内容都将变暗。

int FLAG_DISMISS_KEYGUARD

窗口标志:设置窗口时,只有在不是安全锁定键盘锁的情况下,该键盘才会被取消。

int FLAG_DITHER

此常数在API级别17中已弃用。此标志不再使用。

int FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS

指示此窗口负责绘制系统栏背景的标志。

int FLAG_FORCE_NOT_FULLSCREEN

窗口标志:覆盖 FLAG_FULLSCREEN并强制显示屏幕装饰(如状态栏)。

int FLAG_FULLSCREEN

窗口标志:显示该窗口时隐藏所有屏幕装饰(例如状态栏)。

int FLAG_HARDWARE_ACCELERATED

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

int FLAG_IGNORE_CHEEK_PRESSES

窗口标志:用于当用户将屏幕对着他们的脸部时经常使用的窗口,它将积极地过滤事件流以防止在这种情况下意外按下特定窗口可能不需要的按压,当这样的事件流被检测到时,应用程序将接收到一个CANCEL动作事件以表明这一点,以便应用程序可以通过在事件未被释放之前不对该事件采取任何行动来进行相应处理。

int FLAG_KEEP_SCREEN_ON

窗口标志:只要此窗口对用户可见,请保持设备的屏幕亮起并亮起。

int FLAG_LAYOUT_ATTACHED_IN_DECOR

窗口标志:使用附加窗口请求布局时,附加窗口可能与父窗口的屏幕装饰(如导航栏)重叠。

int FLAG_LAYOUT_INSET_DECOR

窗口标志:仅用于与 FLAG_LAYOUT_IN_SCREEN组合使用的特殊选项。

int FLAG_LAYOUT_IN_OVERSCAN

窗口标志:允许窗口内容扩展到屏幕的过扫描区域(如果有)。

int FLAG_LAYOUT_IN_SCREEN

窗口标志:将窗口放置在整个屏幕内,忽略边框周围的装饰(如状态栏)。

int FLAG_LAYOUT_NO_LIMITS

窗口标志:允许窗口延伸到屏幕外。

int FLAG_LOCAL_FOCUS_MODE

以本地对焦模式标记窗口。

int FLAG_NOT_FOCUSABLE

窗口标志:此窗口永远不会获得按键输入焦点,因此用户无法向其发送按键事件或其他按钮事件。

int FLAG_NOT_TOUCHABLE

窗口标志:此窗口永远不会接收触摸事件。

int FLAG_NOT_TOUCH_MODAL

窗口标志:即使该窗口可以 FLAG_NOT_FOCUSABLE (其未设置 FLAG_NOT_FOCUSABLE ),也允许窗口外的任何指针事件发送到窗口后面的窗口。

int FLAG_SCALED

窗口标志:一种特殊模式,其中布局参数用于在合成到屏幕时执行表面缩放。

int FLAG_SECURE

窗口标志:将窗口的内容视为安全,防止它出现在屏幕截图中或在非安全显示器上查看。

int FLAG_SHOW_WALLPAPER

窗口标志:请求系统壁纸显示在窗口后面。

int FLAG_SHOW_WHEN_LOCKED

窗口标志:当屏幕锁定时可以显示窗口的特殊标志。

int FLAG_SPLIT_TOUCH

窗口标志:设置时,窗口将接受超出其界限的触摸事件,以发送到也支持分离触摸的其他窗口。

int FLAG_TOUCHABLE_WHEN_WAKING

此常数在API级别20中已弃用。此标志不起作用。

int FLAG_TRANSLUCENT_NAVIGATION

窗口标志:请求具有最小系统提供背景保护的半透明导航栏。

int FLAG_TRANSLUCENT_STATUS

窗口标志:请求系统提供最少背景保护的半透明状态栏。

int FLAG_TURN_SCREEN_ON

窗口标志:当设置为窗口被添加或显示时,一旦窗口显示出来,系统就会捅动力管理器的用户活动(就好像用户唤醒了设备一样)来打开屏幕。

int FLAG_WATCH_OUTSIDE_TOUCH

窗口标志:如果您设置了 FLAG_NOT_TOUCH_MODAL ,则可以将此标志设置为接收单个特殊的 MotionEvent.ACTION_OUTSIDE ,其动作为 MotionEvent.ACTION_OUTSIDE用于在窗口外发生的触摸。

int FORMAT_CHANGED

int LAST_APPLICATION_WINDOW

应用程序窗口类型的结束。

int LAST_SUB_WINDOW

子窗口类型的结束。

int LAST_SYSTEM_WINDOW

系统窗口类型的结束。

int LAYOUT_CHANGED

int MEMORY_TYPE_CHANGED

int MEMORY_TYPE_GPU

此常数在API级别5中已弃用。此值被忽略,此值在需要时自动设置。

int MEMORY_TYPE_HARDWARE

此常数在API级别5中已弃用。此值被忽略,此值在需要时自动设置。

int MEMORY_TYPE_NORMAL

此常数在API级别11中已被弃用。这被忽略,此值在需要时自动设置。

int MEMORY_TYPE_PUSH_BUFFERS

此常数在API级别11中已被弃用。这被忽略,此值在需要时自动设置。

int ROTATION_ANIMATION_CHANGED

int ROTATION_ANIMATION_CROSSFADE

rotationAnimation值用于定义用于指定此窗口在旋转后淡入或淡出的动画。

int ROTATION_ANIMATION_JUMPCUT

rotationAnimation值用于定义用于指定此窗口将在旋转后立即消失或出现的动画。

int ROTATION_ANIMATION_ROTATE

rotationAnimation值用于定义用于指定此窗口将在旋转后旋入或旋出的动画。

int SCREEN_BRIGHTNESS_CHANGED

int SCREEN_ORIENTATION_CHANGED

int SOFT_INPUT_ADJUST_NOTHING

softInputMode调整选项:设置为不对所示的输入法调整窗口。

int SOFT_INPUT_ADJUST_PAN

softInputMode调整选项:设置为在显示输入法时显示一个窗口,因此它不需要处理调整大小,而是由框架平移以确保当前输入焦点可见。

int SOFT_INPUT_ADJUST_RESIZE

softInputMode调整选项:设置为允许在显示输入法时调整窗口的大小,以使其内容不被输入法覆盖。

int SOFT_INPUT_ADJUST_UNSPECIFIED

调整选项 softInputMode :没有指定。

int SOFT_INPUT_IS_FORWARD_NAVIGATION

位为 softInputMode :当用户向前导航到窗口时设置。

int SOFT_INPUT_MASK_ADJUST

softInputMode的掩码,用于确定应调整窗口以适应软输入窗口的方式。

int SOFT_INPUT_MASK_STATE

softInputMode的位掩码,用于确定此窗口的软输入区域的所需可见性状态。

int SOFT_INPUT_MODE_CHANGED

int SOFT_INPUT_STATE_ALWAYS_HIDDEN

softInputMode可见性状态:当此窗口获得焦点时,请始终隐藏任何软输入区域。

int SOFT_INPUT_STATE_ALWAYS_VISIBLE

softInputMode可见性状态:当此窗口收到输入焦点时,请始终使软输入区域可见。

int SOFT_INPUT_STATE_HIDDEN

softInputMode可见性状态:在正常情况下(当用户向前导航到窗口时),请隐藏任何软输入区域。

int SOFT_INPUT_STATE_UNCHANGED

softInputMode可见性状态:请勿更改软输入区域的状态。

int SOFT_INPUT_STATE_UNSPECIFIED

可见性状态为 softInputMode :未指定状态。

int SOFT_INPUT_STATE_VISIBLE

softInputMode可见性状态:在正常情况下(当用户向前导航到窗口时),请显示软输入区域。

int TITLE_CHANGED

int TYPE_ACCESSIBILITY_OVERLAY

窗口类型: 由连接的 AccessibilityService覆盖的Windows,用于拦截用户交互,而无需更改辅助功能服务可以反思的窗口。

int TYPE_APPLICATION

窗口类型:正常的应用程序窗口。

int TYPE_APPLICATION_ATTACHED_DIALOG

窗口类型:类似于 TYPE_APPLICATION_PANEL ,但是窗口的布局发生为顶层窗口的布局, 而不是其容器的子窗口。

int TYPE_APPLICATION_MEDIA

窗口类型:用于显示媒体(如视频)的窗口。

int TYPE_APPLICATION_PANEL

窗口类型:应用程序窗口顶部的面板。

int TYPE_APPLICATION_STARTING

窗口类型:应用程序启动时显示的特殊应用程序窗口。

int TYPE_APPLICATION_SUB_PANEL

窗口类型:应用程序窗口顶部的子面板。

int TYPE_BASE_APPLICATION

窗口类型:用作整个应用程序的“基本”窗口的应用程序窗口; 所有其他应用程序窗口将出现在它的顶部。

int TYPE_CHANGED

int TYPE_INPUT_METHOD

窗口类型:内部输入法窗口,显示在正常UI的上方。

int TYPE_INPUT_METHOD_DIALOG

窗口类型:显示在当前输入法窗口上方的内部输入法对话框窗口。

int TYPE_KEYGUARD_DIALOG

窗口类型:键盘锁显示的对话框在多用户系统中显示所有用户的窗口。

int TYPE_PHONE

窗口类型:电话。

int TYPE_PRIORITY_PHONE

窗口类型:优先手机用户界面,即使键盘锁处于活动状态,也需要显示该用户界面。

int TYPE_PRIVATE_PRESENTATION

窗口类型:用于在专用虚拟显示器之上呈现的窗口。

int TYPE_SEARCH_BAR

窗口类型:搜索栏。

int TYPE_STATUS_BAR

窗口类型:状态栏。

int TYPE_STATUS_BAR_PANEL

窗口类型:通过状态栏滑出的面板在多用户系统中,在所有用户的窗口中显示。

int TYPE_SYSTEM_ALERT

窗口类型:系统窗口,例如低功耗警报。

int TYPE_SYSTEM_DIALOG

窗口类型:从状态栏滑出的面板在多用户系统中显示所有用户的窗口。

int TYPE_SYSTEM_ERROR

窗口类型:内部系统错误窗口,出现在他们所能做的一切事物之上。

int TYPE_SYSTEM_OVERLAY

窗口类型:系统覆盖窗口,需要在其他所有窗口上显示。

int TYPE_TOAST

窗口类型:瞬时通知。

int TYPE_WALLPAPER

窗口类型:壁纸窗口,放置在想要坐在壁纸顶部的任何窗口后面。

Inherited constants

From class android.view.ViewGroup.LayoutParams
From interface android.os.Parcelable

Fields

public static final Creator<WindowManager.LayoutParams> CREATOR

public float alpha

应用于整个窗口的Alpha值。

public float buttonBrightness

这可以用来覆盖按钮和键盘背光的标准行为。

public float dimAmount

当设置了 FLAG_DIM_BEHIND ,这是适用的调光量。

public int flags

各种行为选项/标志。

public int format

所需的位图格式。

public int gravity

根据 Gravity在屏幕内放置窗口。

public float horizontalMargin

容器和小部件之间的水平边距,以容器宽度的百分比表示。

public float horizontalWeight

指示多少额外空间将水平分配给与这些LayoutParams关联的视图。

public int memoryType

该字段在API级别11中已被弃用。这被忽略

public String packageName

拥有此窗口的软件包的名称。

public int preferredDisplayModeId

窗口的首选显示模式的ID。

public float preferredRefreshRate

此字段在API级别23中已弃用。 preferredDisplayModeId改为使用preferredDisplayModeId

public int rotationAnimation

在设备旋转时定义此窗口上使用的退出和输入动画。

public float screenBrightness

这可以用来覆盖用户的首选屏幕亮度。

public int screenOrientation

窗口的特定方向值。

public int softInputMode

任何软输入区域的所需操作模式。

public int systemUiVisibility

控制状态栏的可见性。

public IBinder token

此窗口的标识符。

public int type

窗口的一般类型。

public float verticalMargin

容器和小部件之间的垂直边距,以容器高度的百分比表示。

public float verticalWeight

指示多少额外空间将垂直分配给与这些LayoutParams关联的视图。

public int windowAnimations

定义用于此窗口的动画的样式资源。

public int x

X窗口的位置。

public int y

Y窗口的位置。

Inherited fields

From class android.view.ViewGroup.LayoutParams

Public constructors

WindowManager.LayoutParams()
WindowManager.LayoutParams(int _type)
WindowManager.LayoutParams(int _type, int _flags)
WindowManager.LayoutParams(int _type, int _flags, int _format)
WindowManager.LayoutParams(int w, int h, int _type, int _flags, int _format)
WindowManager.LayoutParams(int w, int h, int xpos, int ypos, int _type, int _flags, int _format)
WindowManager.LayoutParams(Parcel in)

Public methods

final int copyFrom(WindowManager.LayoutParams o)
String debug(String output)

返回此组布局参数的字符串表示形式。

int describeContents()

描述此Parcelable实例的封送表示中包含的特殊对象的种类。

final CharSequence getTitle()
static boolean mayUseInputMethod(int flags)

给定一组特定的窗口管理器标志,确定这样一个窗口是否可能是焦点对应的输入方法的目标。

final void setTitle(CharSequence title)
String toString()

返回对象的字符串表示形式。

void writeToParcel(Parcel out, int parcelableFlags)

将此对象平铺到一个包裹中。

Inherited methods

From class android.view.ViewGroup.LayoutParams
From class java.lang.Object
From interface android.os.Parcelable

Constants

ALPHA_CHANGED

Added in API level 1
int ALPHA_CHANGED

常量值:128(0x00000080)

ANIMATION_CHANGED

Added in API level 1
int ANIMATION_CHANGED

常量值:16(0x00000010)

BRIGHTNESS_OVERRIDE_FULL

Added in API level 8
float BRIGHTNESS_OVERRIDE_FULL

screenBrightnessbuttonBrightness表示当此窗口位于前面时,应将屏幕或按钮背光亮度设置为最高值。

常数值:1.0

BRIGHTNESS_OVERRIDE_NONE

Added in API level 8
float BRIGHTNESS_OVERRIDE_NONE

screenBrightnessbuttonBrightness默认值表示此窗口的亮度值未被覆盖,应使用正常的亮度策略。

常数值:-1.0

BRIGHTNESS_OVERRIDE_OFF

Added in API level 8
float BRIGHTNESS_OVERRIDE_OFF

screenBrightnessbuttonBrightness表示当此窗口位于前面时,应将屏幕或按钮背光亮度设置为最低值。

常数值:0.0

DIM_AMOUNT_CHANGED

Added in API level 1
int DIM_AMOUNT_CHANGED

常量值:32(0x00000020)

FIRST_APPLICATION_WINDOW

Added in API level 1
int FIRST_APPLICATION_WINDOW

代表正常应用程序窗口的窗口类型的开始。

常数值:1(0x00000001)

FIRST_SUB_WINDOW

Added in API level 1
int FIRST_SUB_WINDOW

子窗口类型的开始。 这些窗口的token必须设置为它们所连接的窗口。 这些类型的窗口按照Z顺序保持在其附加窗口的旁边,并且它们的坐标空间相对于它们的附加窗口。

常量值:1000(0x000003e8)

FIRST_SYSTEM_WINDOW

Added in API level 1
int FIRST_SYSTEM_WINDOW

开始系统特定的窗口类型。 这些通常不是由应用程序创建的。

常量值:2000(0x000007d0)

FLAGS_CHANGED

Added in API level 1
int FLAGS_CHANGED

常量值:4(0x00000004)

FLAG_ALLOW_LOCK_WHILE_SCREEN_ON

Added in API level 8
int FLAG_ALLOW_LOCK_WHILE_SCREEN_ON

窗口标志:只要该窗口对用户可见,允许锁定屏幕在屏幕开启时激活。 这可以单独使用,或与FLAG_KEEP_SCREEN_ON和/或FLAG_SHOW_WHEN_LOCKED

常数值:1(0x00000001)

FLAG_ALT_FOCUSABLE_IM

Added in API level 3
int FLAG_ALT_FOCUSABLE_IM

窗口标志:关于此窗口如何与当前方法交互,反转FLAG_NOT_FOCUSABLE的状态。 也就是说,如果FLAG_NOT_FOCUSABLE被设置并且这个标志被设置,那么该窗口将表现得好像它需要与输入方法进行交互并因此被置于/远离它; 如果未设置FLAG_NOT_FOCUSABLE并且设置了此标志,则该窗口的行为就好像不需要与输入方法交互一样,并且可以放置为使用更多空间并覆盖输入方法。

常量值:131072(0x00020000)

FLAG_BLUR_BEHIND

Added in API level 1
int FLAG_BLUR_BEHIND

此常数在API级别14中已弃用。
模糊不再被支持。

窗口标志:模糊窗口后面的所有内容。

常量值:4(0x00000004)

FLAG_DIM_BEHIND

Added in API level 1
int FLAG_DIM_BEHIND

窗口标志:此窗口后面的所有内容都将变暗。 使用dimAmount来控制模糊量。

常量值:2(0x00000002)

FLAG_DISMISS_KEYGUARD

Added in API level 5
int FLAG_DISMISS_KEYGUARD

窗口标志:设置窗口时,只有在不是安全锁定键盘锁的情况下,该键盘才会被取消。 由于安全性不需要此类键盘保护,因此如果用户导航到另一个窗口,它将不会再次出现(与FLAG_SHOW_WHEN_LOCKED ,后者只会临时隐藏安全和非安全的键盘锁,但会确保在用户移动到另一个UI不会隐藏它们)。 如果键盘锁目前处于活动状态且安全(需要解锁图案),则用户在看到此窗口之前仍需要确认它,除非已设置FLAG_SHOW_WHEN_LOCKED

常量值:4194304(0x00400000)

FLAG_DITHER

Added in API level 1
int FLAG_DITHER

此常数在API级别17中已弃用。
该标志不再使用。

窗口标志:在将此窗口合成到屏幕时打开抖动。

常量值:4096(0x00001000)

FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS

Added in API level 21
int FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS

指示此窗口负责绘制系统栏背景的标志。 如果设置,系统栏将以透明背景绘制,并且此窗口中的相应区域将填充getStatusBarColor()getNavigationBarColor()指定的颜色。

常量值:-2147483648(0x80000000)

FLAG_FORCE_NOT_FULLSCREEN

Added in API level 1
int FLAG_FORCE_NOT_FULLSCREEN

窗口标志:覆盖 FLAG_FULLSCREEN并强制显示屏幕装饰(如状态栏)。

常量值:2048(0x00000800)

FLAG_FULLSCREEN

Added in API level 1
int FLAG_FULLSCREEN

窗口标志:显示该窗口时隐藏所有屏幕装饰(例如状态栏)。 这允许窗口自身使用整个显示空间 - 当设置了该标志的应用程序窗口位于顶层时,状态栏将被隐藏。 全屏窗口将忽略值SOFT_INPUT_ADJUST_RESIZE为窗口的softInputMode场; 该窗口将保持全屏并且不会调整大小。

该标志可以通过windowFullscreen属性在主题中进行控制; 这个属性被自动标准全屏的主题,如为您设置Theme_NoTitleBar_FullscreenTheme_Black_NoTitleBar_FullscreenTheme_Light_NoTitleBar_FullscreenTheme_Holo_NoActionBar_FullscreenTheme_Holo_Light_NoActionBar_FullscreenTheme_DeviceDefault_NoActionBar_Fullscreen ,并Theme_DeviceDefault_Light_NoActionBar_Fullscreen

常量值:1024(0x00000400)

FLAG_HARDWARE_ACCELERATED

Added in API level 11
int FLAG_HARDWARE_ACCELERATED

指示此窗口是否应硬件加速。 请求硬件加速并不保证它会发生。

该标志可以编程控制, 启用硬件加速。 要以编程方式为给定窗口启用硬件加速,请执行以下操作:

 Window w = activity.getWindow(); // in Activity's onCreate() for instance
 w.setFlags(WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
         WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);
 

请务必记住, 必须在设置活动或对话框的内容视图之前设置此标志。

在清单中使用hardwareAccelerated启用该标志后,该标志不能用于禁用硬件加速。 如果您需要选择性地并以编程方式禁用硬件加速(例如,针对自动化测试),请确保在清单中将其关闭,并在您需要时使用上述方法替代您的活动或对话框。

如果在活动或应用程序 android:hardwareAccelerated XML属性设置为true,则此标志由系统自动设置。

常量值:16777216(0x01000000)

FLAG_IGNORE_CHEEK_PRESSES

Added in API level 1
int FLAG_IGNORE_CHEEK_PRESSES

窗口标志:用于当用户将屏幕对着他们的脸部时经常使用的窗口,它将积极地过滤事件流以防止在这种情况下意外按下特定窗口可能不需要的按压,当这样的事件流被检测到时,应用程序将接收到一个CANCEL动作事件以表明这一点,以便应用程序可以通过在事件未被释放之前不对该事件采取任何行动来进行相应处理。

常量值:32768(0x00008000)

FLAG_KEEP_SCREEN_ON

Added in API level 1
int FLAG_KEEP_SCREEN_ON

窗口标志:只要此窗口对用户可见,请保持设备的屏幕亮起并亮起。

常量值:128(0x00000080)

FLAG_LAYOUT_ATTACHED_IN_DECOR

Added in API level 22
int FLAG_LAYOUT_ATTACHED_IN_DECOR

窗口标志:使用附加窗口请求布局时,附加窗口可能与父窗口的屏幕装饰(如导航栏)重叠。 通过包含该标志,窗口管理器将在父窗口的装饰框内布置附加窗口,使其不与屏幕装饰重叠。

常量值:1073741824(0x40000000)

FLAG_LAYOUT_INSET_DECOR

Added in API level 1
int FLAG_LAYOUT_INSET_DECOR

窗口标志:仅用于与FLAG_LAYOUT_IN_SCREEN组合使用的特殊选项。 在屏幕上请求布局时,窗口可能会出现在屏幕装饰的顶部或后面,例如状态栏。 通过还包括此标志,窗口管理器将报告所需的插入矩形,以确保您的内容不被屏幕装饰覆盖。 该标志通常由Window设置,如setFlags(int, int)

常量值:65536(0x00010000)

FLAG_LAYOUT_IN_OVERSCAN

Added in API level 18
int FLAG_LAYOUT_IN_OVERSCAN

窗口标志:允许窗口内容扩展到屏幕的过扫描区域(如果有)。 窗户仍应正确定位其内容以考虑过扫描区域。

该标志可以通过windowOverscan属性在主题中进行控制; 这个属性被自动标准过扫描的主题,如为您设置Theme_Holo_NoActionBar_OverscanTheme_Holo_Light_NoActionBar_OverscanTheme_DeviceDefault_NoActionBar_Overscan ,并Theme_DeviceDefault_Light_NoActionBar_Overscan

当为窗口启用此标志时,其正常内容可能会被显示器的过扫描区域在一定程度上遮蔽。 为确保用户可以看到该内容的关键部分,可以使用View.setFitsSystemWindows(boolean)在视图层次结构中设置适用相应偏移量的点。 (这可以通过直接调用此函数,使用视图层次结构中的fitsSystemWindows属性或实现您自己的View.fitSystemWindows(Rect)方法来完成。

这种定位内容元素的机制与其与布局和View.setSystemUiVisibility(int)等效用法View.setSystemUiVisibility(int) ; 这里是一个示例布局,将正确定位其UI元素,并设置此过扫描标志:

<!-- This layout is designed for use with FLAG_LAYOUT_IN_OVERSCAN, so its window will
     be placed into the overscan region of the display (if there is one).  Thus the contents
     of the top-level view may be obscured around the edges by the display, leaving the
     edge of the box background used here invisible. -->
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/box_white">

    <!-- This is still in the same position as the top-level FrameLayout, so the contentx
        of this TextView may also be obscured. -->
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="3dp"
        android:layout_marginLeft="3dp"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:text="Overscan" />

    <!-- This FrameLayout uses android:fitsSystemWindows to have its padding adjusted so
         that within that space its content is offset to not be obscured by the overscan
         region (or also system decors that are covering its UI. -->
    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true">

        <!-- Now that we are within the padding region of the parent FrameLayout, we can
             safely place content that will be visible to the user. -->
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:src="@drawable/frantic"
            android:scaleType="fitXY" />
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/box_white" />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="3dp"
            android:layout_marginLeft="3dp"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:text="Content" />

    </FrameLayout>

</FrameLayout>

常量值:33554432(0x02000000)

FLAG_LAYOUT_IN_SCREEN

Added in API level 1
int FLAG_LAYOUT_IN_SCREEN

窗口标志:将窗口放置在整个屏幕内,忽略边框周围的装饰(如状态栏)。 窗口必须正确放置其内容以考虑屏幕装饰。 该标志通常由Window设置,如setFlags(int, int)

常量值:256(0x00000100)

FLAG_LAYOUT_NO_LIMITS

Added in API level 1
int FLAG_LAYOUT_NO_LIMITS

窗口标志:允许窗口延伸到屏幕外。

常量值:512(0x00000200)

FLAG_LOCAL_FOCUS_MODE

Added in API level 19
int FLAG_LOCAL_FOCUS_MODE

以本地对焦模式标记窗口。 本地对焦模式中的窗口可以使用setLocalFocus(boolean, boolean)独立于窗口管理器控制焦点。 通常窗口在这种模式下不会从窗口管理器获得触摸/按键事件,但只会通过使用injectInputEvent(InputEvent)本地注入来获取事件。

常量值:268435456(0x10000000)

FLAG_NOT_FOCUSABLE

Added in API level 1
int FLAG_NOT_FOCUSABLE

窗口标志:此窗口永远不会获得按键输入焦点,因此用户无法向其发送按键事件或其他按钮事件。 那些将会转而支持它背后的任何可聚焦的窗口。 无论是否明确设置,此标志也将启用FLAG_NOT_TOUCH_MODAL

设置这个标志还意味着该窗口不需要与软输入方法交互,因此它将被Z排序并且与任何活动输入方法无关地定位(通常这意味着它在输入方法之上获得Z顺序,因此它可以使用全屏显示其内容并在需要时覆盖输入法,您可以使用 FLAG_ALT_FOCUSABLE_IM来修改此行为。

常量值:8(0x00000008)

FLAG_NOT_TOUCHABLE

Added in API level 1
int FLAG_NOT_TOUCHABLE

窗口标志:此窗口永远不会接收触摸事件。

常量值:16(0x00000010)

FLAG_NOT_TOUCH_MODAL

Added in API level 1
int FLAG_NOT_TOUCH_MODAL

窗口标志:即使此窗口可以FLAG_NOT_FOCUSABLE (未设置它的FLAG_NOT_FOCUSABLE ),也允许将窗口外的任何指针事件发送到窗口后面的窗口。 否则,它将自己使用所有指针事件,而不管它们是否在窗口内部。

常量值:32(0x00000020)

FLAG_SCALED

Added in API level 1
int FLAG_SCALED

窗口标志:一种特殊模式,其中布局参数用于在合成到屏幕时执行表面缩放。

常量值:16384(0x00004000)

FLAG_SECURE

Added in API level 1
int FLAG_SECURE

窗口标志:将窗口的内容视为安全,防止它出现在屏幕截图中或在非安全显示器上查看。

有关安全表面和安全显示的更多详细信息,请参阅 FLAG_SECURE

常量值:8192(0x00002000)

FLAG_SHOW_WALLPAPER

Added in API level 5
int FLAG_SHOW_WALLPAPER

窗口标志:请求系统壁纸显示在窗口后面。 窗户表面必须是半透明的,才能真正看到它背后的墙纸; 如果此窗口实际上具有半透明区域,则此标志仅用于确保壁纸表面在那里。

该标志可以通过windowShowWallpaper属性在主题中进行控制; 这个属性被自动标准壁纸的主题,如为您设置Theme_WallpaperTheme_Wallpaper_NoTitleBarTheme_Wallpaper_NoTitleBar_FullscreenTheme_Holo_WallpaperTheme_Holo_Wallpaper_NoTitleBarTheme_DeviceDefault_Wallpaper ,并Theme_DeviceDefault_Wallpaper_NoTitleBar

常量值:1048576(0x00100000)

FLAG_SHOW_WHEN_LOCKED

Added in API level 5
int FLAG_SHOW_WHEN_LOCKED

窗口标志:当屏幕锁定时可以显示窗口的特殊标志。 这将使应用程序窗口优先于密钥守卫或任何其他锁定屏幕。 可以与FLAG_KEEP_SCREEN_ON一起使用, FLAG_KEEP_SCREEN_ON打开屏幕并显示窗口,然后显示密钥保护窗口。 可以与FLAG_DISMISS_KEYGUARD一起使用来自动完全驳回非安全的键盘锁。 该标志仅适用于最顶级的全屏窗口。

常量值:524288(0x00080000)

FLAG_SPLIT_TOUCH

Added in API level 11
int FLAG_SPLIT_TOUCH

窗口标志:设置时,窗口将接受超出其界限的触摸事件,以发送到也支持分离触摸的其他窗口。 当这个标志没有被设置时,第一个停下来的指针决定了所有后续触摸到的窗口,直到所有指针向上。 当这个标志被设置时,每个下降的指针(不一定是第一个)决定了该指针的所有后续触摸将一直到该指针上升的窗口,从而允许多个指针在多个窗口上分开的触摸。

常量值:8388608(0x00800000)

FLAG_TOUCHABLE_WHEN_WAKING

Added in API level 1
int FLAG_TOUCHABLE_WHEN_WAKING

此常数在API级别20中已弃用。
这个标志没有效果。

窗口标志:设置时,如果按下触摸屏时设备处于睡眠状态,则会收到此第一个触摸事件。 通常,第一次触摸事件被系统消耗,因为用户看不到他们正在按下的东西。

常量值:64(0x00000040)

FLAG_TRANSLUCENT_NAVIGATION

Added in API level 19
int FLAG_TRANSLUCENT_NAVIGATION

窗口标志:请求具有最小系统提供背景保护的半透明导航栏。

该标志可以通过windowTranslucentNavigation属性在您的主题中进行控制; 这个属性被自动标准半透明装饰主题的设置,如Theme_Holo_NoActionBar_TranslucentDecorTheme_Holo_Light_NoActionBar_TranslucentDecorTheme_DeviceDefault_NoActionBar_TranslucentDecor ,并Theme_DeviceDefault_Light_NoActionBar_TranslucentDecor

当此窗口启用此标志时,它会自动设置系统UI可见性标志 SYSTEM_UI_FLAG_LAYOUT_STABLESYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

常量值:134217728(0x08000000)

FLAG_TRANSLUCENT_STATUS

Added in API level 19
int FLAG_TRANSLUCENT_STATUS

窗口标志:请求系统提供最少背景保护的半透明状态栏。

该标志可以通过windowTranslucentStatus属性在主题中进行控制; 这个属性被自动标准半透明装饰主题的设置,如Theme_Holo_NoActionBar_TranslucentDecorTheme_Holo_Light_NoActionBar_TranslucentDecorTheme_DeviceDefault_NoActionBar_TranslucentDecor ,并Theme_DeviceDefault_Light_NoActionBar_TranslucentDecor

当此窗口启用此标志时,它会自动设置系统UI可见性标志 SYSTEM_UI_FLAG_LAYOUT_STABLESYSTEM_UI_FLAG_LAYOUT_FULLSCREEN

常量值:67108864(0x04000000)

FLAG_TURN_SCREEN_ON

Added in API level 5
int FLAG_TURN_SCREEN_ON

窗口标志:当设置为窗口被添加或显示时,一旦窗口显示出来,系统就会捅动力管理器的用户活动(就好像用户唤醒了设备一样)来打开屏幕。

常量值:2097152(0x00200000)

FLAG_WATCH_OUTSIDE_TOUCH

Added in API level 3
int FLAG_WATCH_OUTSIDE_TOUCH

窗口标志:如果您设置了FLAG_NOT_TOUCH_MODAL ,则可以将此标志设置为接收一个特殊的MotionEvent.ACTION_OUTSIDE ,其动作为MotionEvent.ACTION_OUTSIDE用于在窗口外发生的触摸。 请注意,您将不会收到完整的向下/向上/向上手势,只有第一个向下的位置作为ACTION_OUTSIDE。

常量值:262144(0x00040000)

FORMAT_CHANGED

Added in API level 1
int FORMAT_CHANGED

常量值:8(0x00000008)

LAST_APPLICATION_WINDOW

Added in API level 1
int LAST_APPLICATION_WINDOW

应用程序窗口类型的结束。

常量值:99(0x00000063)

LAST_SUB_WINDOW

Added in API level 1
int LAST_SUB_WINDOW

子窗口类型的结束。

常量值:1999(0x000007cf)

LAST_SYSTEM_WINDOW

Added in API level 1
int LAST_SYSTEM_WINDOW

系统窗口类型的结束。

常量值:2999(0x00000bb7)

LAYOUT_CHANGED

Added in API level 1
int LAYOUT_CHANGED

常数值:1(0x00000001)

MEMORY_TYPE_CHANGED

Added in API level 1
int MEMORY_TYPE_CHANGED

常量值:256(0x00000100)

MEMORY_TYPE_GPU

Added in API level 1
int MEMORY_TYPE_GPU

此常数在API级别5中已弃用。
这被忽略,这个值在需要时自动设置。

常量值:2(0x00000002)

MEMORY_TYPE_HARDWARE

Added in API level 1
int MEMORY_TYPE_HARDWARE

This constant was deprecated in API level 5.
this is ignored, this value is set automatically when needed.

常数值:1(0x00000001)

MEMORY_TYPE_NORMAL

Added in API level 1
int MEMORY_TYPE_NORMAL

此常数在API级别11中已弃用。
这被忽略,这个值在需要时自动设置。

常量值:0(0x00000000)

MEMORY_TYPE_PUSH_BUFFERS

Added in API level 1
int MEMORY_TYPE_PUSH_BUFFERS

此常数在API级别11中已弃用。
这被忽略,这个值在需要时自动设置。

常量值:3(0x00000003)

ROTATION_ANIMATION_CHANGED

Added in API level 18
int ROTATION_ANIMATION_CHANGED

常量值:4096(0x00001000)

ROTATION_ANIMATION_CROSSFADE

Added in API level 18
int ROTATION_ANIMATION_CROSSFADE

rotationAnimation值用于定义用于指定此窗口在旋转后淡入或淡出的动画。

常数值:1(0x00000001)

ROTATION_ANIMATION_JUMPCUT

Added in API level 18
int ROTATION_ANIMATION_JUMPCUT

rotationAnimation值用于定义用于指定此窗口将立即消失或在旋转后出现的动画。

常量值:2(0x00000002)

ROTATION_ANIMATION_ROTATE

Added in API level 18
int ROTATION_ANIMATION_ROTATE

rotationAnimation值用于定义用于指定此窗口在旋转后旋转或旋转的动画。

常量值:0(0x00000000)

SCREEN_BRIGHTNESS_CHANGED

Added in API level 3
int SCREEN_BRIGHTNESS_CHANGED

常量值:2048(0x00000800)

SCREEN_ORIENTATION_CHANGED

Added in API level 3
int SCREEN_ORIENTATION_CHANGED

常量值:1024(0x00000400)

SOFT_INPUT_ADJUST_NOTHING

Added in API level 11
int SOFT_INPUT_ADJUST_NOTHING

softInputMode调整选项:设置为不对所示的输入法调整窗口。 该窗口不会被调整大小,并且不会被平移以使其焦点可见。

常量值:48(0x00000030)

SOFT_INPUT_ADJUST_PAN

Added in API level 3
int SOFT_INPUT_ADJUST_PAN

softInputMode调整选项:设置为在显示输入法时显示一个窗口,因此它不需要处理调整大小,而是由框架平移以确保当前输入焦点可见。 不能SOFT_INPUT_ADJUST_RESIZE结合; 如果这些都没有设置,那么系统将尝试根据窗口的内容选择一个或另一个。

常量值:32(0x00000020)

SOFT_INPUT_ADJUST_RESIZE

Added in API level 3
int SOFT_INPUT_ADJUST_RESIZE

softInputMode调整选项:设置为允许在显示输入法时调整窗口的大小,以使其内容不被输入法覆盖。 不能SOFT_INPUT_ADJUST_PAN结合; 如果这些都没有设置,那么系统将尝试根据窗口的内容选择一个或另一个。 如果窗口的布局参数标志包括FLAG_FULLSCREEN ,则该值为softInputMode将被忽略; 该窗口不会调整大小,但会保持全屏显示。

常量值:16(0x00000010)

SOFT_INPUT_ADJUST_UNSPECIFIED

Added in API level 3
int SOFT_INPUT_ADJUST_UNSPECIFIED

softInputMode调整选项:没有指定。 系统将尝试根据窗口的内容选择一个或另一个。

常量值:0(0x00000000)

SOFT_INPUT_IS_FORWARD_NAVIGATION

Added in API level 3
int SOFT_INPUT_IS_FORWARD_NAVIGATION

用于softInputMode位:当用户向前导航到窗口时设置。 这通常由系统为您自动设置,尽管您可能想在某些情况下设置它,当您自己显示一个窗口时。 该窗口显示后,该标志将始终自动清除。

常量值:256(0x00000100)

SOFT_INPUT_MASK_ADJUST

Added in API level 3
int SOFT_INPUT_MASK_ADJUST

softInputMode的掩码,用于确定窗口应该被调整以适应软输入窗口的方式。

常量值:240(0x000000f0)

SOFT_INPUT_MASK_STATE

Added in API level 3
int SOFT_INPUT_MASK_STATE

softInputMode的位掩码,用于确定此窗口的软输入区域的所需可见性状态。

常量值:15(0x0000000f)

SOFT_INPUT_MODE_CHANGED

Added in API level 3
int SOFT_INPUT_MODE_CHANGED

常量值:512(0x00000200)

SOFT_INPUT_STATE_ALWAYS_HIDDEN

Added in API level 3
int SOFT_INPUT_STATE_ALWAYS_HIDDEN

softInputMode可见性状态:当此窗口获得焦点时,请始终隐藏任何软输入区域。

常量值:3(0x00000003)

SOFT_INPUT_STATE_ALWAYS_VISIBLE

Added in API level 3
int SOFT_INPUT_STATE_ALWAYS_VISIBLE

softInputMode可见性状态:当此窗口收到输入焦点时,请始终使软输入区域可见。

常量值:5(0x00000005)

SOFT_INPUT_STATE_HIDDEN

Added in API level 3
int SOFT_INPUT_STATE_HIDDEN

softInputMode可见性状态:在正常情况下(当用户向前导航到窗口时),请隐藏任何软输入区域。

常量值:2(0x00000002)

SOFT_INPUT_STATE_UNCHANGED

Added in API level 3
int SOFT_INPUT_STATE_UNCHANGED

可见性状态为 softInputMode :请不要改变软输入区域的状态。

常数值:1(0x00000001)

SOFT_INPUT_STATE_UNSPECIFIED

Added in API level 3
int SOFT_INPUT_STATE_UNSPECIFIED

可见性状态为 softInputMode :未指定状态。

常量值:0(0x00000000)

SOFT_INPUT_STATE_VISIBLE

Added in API level 3
int SOFT_INPUT_STATE_VISIBLE

softInputMode可见性状态:在正常情况下(当用户向前导航到窗口时),请显示软输入区域。

常量值:4(0x00000004)

TITLE_CHANGED

Added in API level 1
int TITLE_CHANGED

常量值:64(0x00000040)

TYPE_ACCESSIBILITY_OVERLAY

Added in API level 22
int TYPE_ACCESSIBILITY_OVERLAY

窗口类型: 由连接的AccessibilityService覆盖的Windows,用于拦截用户交互,而无需更改辅助功能服务可以反思的窗口。 特别是,无障碍服务可以只反映有视力的用户可以与之交互的窗口,也就是说他们可以触摸这些窗口或者可以键入这些窗口。 例如,如果存在可触摸的全屏可访问性覆盖,则即使它们被可触摸窗口覆盖,其下面的窗口也会被可访问性服务反思。

常量值:2032(0x000007f0)

TYPE_APPLICATION

Added in API level 1
int TYPE_APPLICATION

窗口类型:正常的应用程序窗口。 token必须是标识窗口属于谁的活动标记。 在多用户系统中只显示拥有用户的窗口。

常量值:2(0x00000002)

TYPE_APPLICATION_ATTACHED_DIALOG

Added in API level 3
int TYPE_APPLICATION_ATTACHED_DIALOG

窗口类型:类似于 TYPE_APPLICATION_PANEL ,但窗口的布局发生为顶层窗口的布局, 而不是其容器的子窗口。

常量值:1003(0x000003eb)

TYPE_APPLICATION_MEDIA

Added in API level 1
int TYPE_APPLICATION_MEDIA

窗口类型:用于显示媒体(如视频)的窗口。 这些窗口显示在其连接的窗口后面。

常量值:1001(0x000003e9)

TYPE_APPLICATION_PANEL

Added in API level 1
int TYPE_APPLICATION_PANEL

窗口类型:应用程序窗口顶部的面板。 这些窗口显示在其附加窗口的顶部。

常量值:1000(0x000003e8)

TYPE_APPLICATION_STARTING

Added in API level 1
int TYPE_APPLICATION_STARTING

窗口类型:应用程序启动时显示的特殊应用程序窗口。 不适用于应用程序本身; 系统使用它来显示某些内容,直到应用程序可以显示其自己的窗口。 在多用户系统中显示所有用户的窗口。

常量值:3(0x00000003)

TYPE_APPLICATION_SUB_PANEL

Added in API level 1
int TYPE_APPLICATION_SUB_PANEL

窗口类型:应用程序窗口顶部的子面板。 这些窗口显示在其连接的窗口和任何TYPE_APPLICATION_PANEL面板的顶部。

常量值:1002(0x000003ea)

TYPE_BASE_APPLICATION

Added in API level 1
int TYPE_BASE_APPLICATION

窗口类型:用作整个应用程序的“基本”窗口的应用程序窗口; 所有其他应用程序窗口将出现在它的顶部。 在多用户系统中只显示拥有用户的窗口。

常数值:1(0x00000001)

TYPE_CHANGED

Added in API level 1
int TYPE_CHANGED

常量值:2(0x00000002)

TYPE_INPUT_METHOD

Added in API level 3
int TYPE_INPUT_METHOD

窗口类型:内部输入法窗口,显示在正常UI的上方。 在显示此窗口时,应用程序窗口可能会调整大小或平移以保持输入焦点可见。 在多用户系统中只显示拥有用户的窗口。

常量值:2011(0x000007db)

TYPE_INPUT_METHOD_DIALOG

Added in API level 3
int TYPE_INPUT_METHOD_DIALOG

窗口类型:显示在当前输入法窗口上方的内部输入法对话框窗口。 在多用户系统中只显示拥有用户的窗口。

常量值:2012(0x000007dc)

TYPE_KEYGUARD_DIALOG

Added in API level 1
int TYPE_KEYGUARD_DIALOG

窗口类型:键盘锁显示的对话框在多用户系统中显示所有用户的窗口。

常量值:2009(0x000007d9)

TYPE_PHONE

Added in API level 1
int TYPE_PHONE

窗口类型:电话。 这些是非应用程序窗口,提供用户与电话的交互(特别是来电)。 这些窗口通常位于所有应用程序之上,但位于状态栏之后。 在多用户系统中显示所有用户的窗口。

常量值:2002(0x000007d2)

TYPE_PRIORITY_PHONE

Added in API level 1
int TYPE_PRIORITY_PHONE

窗口类型:优先手机用户界面,即使键盘锁处于活动状态,也需要显示该用户界面。 这些窗口不得输入焦点,否则会干扰键盘。 在多用户系统中显示所有用户的窗口。

常量值:2007(0x000007d7)

TYPE_PRIVATE_PRESENTATION

Added in API level 19
int TYPE_PRIVATE_PRESENTATION

窗口类型:用于在专用虚拟显示器之上呈现的窗口。

常量值:2030(0x000007ee)

TYPE_SEARCH_BAR

Added in API level 1
int TYPE_SEARCH_BAR

窗口类型:搜索栏。 只能有一个搜索栏窗口; 它被放置在屏幕的顶部。 在多用户系统中显示所有用户的窗口。

常量值:2001(0x000007d1)

TYPE_STATUS_BAR

Added in API level 1
int TYPE_STATUS_BAR

窗口类型:状态栏。 只能有一个状态栏窗口; 它被放置在屏幕的顶部,并且所有其他窗口都向下移动,因此它们在它下面。 在多用户系统中显示所有用户的窗口。

常量值:2000(0x000007d0)

TYPE_STATUS_BAR_PANEL

Added in API level 1
int TYPE_STATUS_BAR_PANEL

窗口类型:通过状态栏滑出的面板在多用户系统中,在所有用户的窗口中显示。

常量值:2014(0x000007de)

TYPE_SYSTEM_ALERT

Added in API level 1
int TYPE_SYSTEM_ALERT

窗口类型:系统窗口,例如低功耗警报。 这些窗口始终位于应用程序窗口之上。 在多用户系统中只显示拥有用户的窗口。

常量值:2003(0x000007d3)

TYPE_SYSTEM_DIALOG

Added in API level 1
int TYPE_SYSTEM_DIALOG

窗口类型:从状态栏滑出的面板在多用户系统中显示所有用户的窗口。

常量值:2008(0x000007d8)

TYPE_SYSTEM_ERROR

Added in API level 1
int TYPE_SYSTEM_ERROR

窗口类型:内部系统错误窗口,出现在他们所能做的一切事物之上。 在多用户系统中只显示拥有用户的窗口。

常量值:2010(0x000007da)

TYPE_SYSTEM_OVERLAY

Added in API level 1
int TYPE_SYSTEM_OVERLAY

窗口类型:系统覆盖窗口,需要在其他所有窗口上显示。 这些窗口不得输入焦点,否则会干扰键盘。 在多用户系统中只显示拥有用户的窗口。

常量值:2006(0x000007d6)

TYPE_TOAST

Added in API level 1
int TYPE_TOAST

窗口类型:瞬时通知。 在多用户系统中只显示拥有用户的窗口。

常量值:2005(0x000007d5)

TYPE_WALLPAPER

Added in API level 5
int TYPE_WALLPAPER

窗口类型:壁纸窗口,放置在想要坐在壁纸顶部的任何窗口后面。 在多用户系统中只显示拥有用户的窗口。

常量值:2013(0x000007dd)

Fields

CREATOR

Added in API level 1
Creator<WindowManager.LayoutParams> CREATOR

alpha

Added in API level 1
float alpha

应用于整个窗口的Alpha值。 1.0的alpha表示完全不透明,0.0表示完全透明

buttonBrightness

Added in API level 8
float buttonBrightness

这可以用来覆盖按钮和键盘背光的标准行为。 小于0的值(默认值)意味着使用标准背光行为。 0到1调整亮度从黑暗到全亮。

dimAmount

Added in API level 1
float dimAmount

当设置了FLAG_DIM_BEHIND ,这是应用的调光量。 范围从完全不透明的1.0到没有暗淡的0.0。

format

Added in API level 1
int format

所需的位图格式。 可能是PixelFormat中的常量之一。 默认是OPAQUE。

gravity

Added in API level 1
int gravity

根据Gravity在屏幕内放置窗口。 窗口布局过程中都使用Gravity.applyGravity.applyDisplay ,并将此值作为所需的重力。 例如,您可以在此处指定Gravity.DISPLAY_CLIP_HORIZONTALGravity.DISPLAY_CLIP_VERTICAL来控制Gravity.applyDisplay的行为。

也可以看看:

horizontalMargin

Added in API level 1
float horizontalMargin

容器和小部件之间的水平边距,以容器宽度的百分比表示。 有关如何使用它,请参见Gravity.apply 该字段与x一起添加以提供xAdj参数。

horizontalWeight

Added in API level 1
float horizontalWeight

指示多少额外空间将水平分配给与这些LayoutParams关联的视图。 如果不应拉伸视图,请指定0。 否则,额外像素将在所有重量大于0的视图中按比例分配。

memoryType

Added in API level 1
int memoryType

此字段在API级别11中已被弃用。
这被忽略了

packageName

Added in API level 1
String packageName

拥有此窗口的软件包的名称。

preferredDisplayModeId

Added in API level 23
int preferredDisplayModeId

窗口的首选显示模式的ID。

这必须是窗口所在显示器支持的模式之一。 值为0意味着没有偏好。

也可以看看:

preferredRefreshRate

Added in API level 21
float preferredRefreshRate

此字段在API级别23中已被弃用。
改为使用preferredDisplayModeId

窗口的首选刷新率。 这必须是窗口所在显示器所支持的刷新率之一。 选定的刷新率将应用于显示器的默认模式。 如果设置了preferredDisplayModeId则该值将被忽略。

也可以看看:

rotationAnimation

Added in API level 18
int rotationAnimation

在设备旋转时定义此窗口上使用的退出和输入动画。 如果传入和传出的最上面的不透明窗口已设置了#FLAG_FULLSCREEN位,并且未被其他窗口覆盖,则这只会影响效果。 所有其他情况默认为ROTATION_ANIMATION_ROTATE行为。

也可以看看:

screenBrightness

Added in API level 3
float screenBrightness

这可以用来覆盖用户的首选屏幕亮度。 小于0的值(默认值)意味着使用首选屏幕亮度。 0到1调整亮度从黑暗到全亮。

screenOrientation

Added in API level 3
int screenOrientation

窗口的特定方向值。 可能是screenOrientation允许的任何相同值。 如果未设置,则将使用默认值SCREEN_ORIENTATION_UNSPECIFIED

softInputMode

Added in API level 3
int softInputMode

任何软输入区域的所需操作模式。 可能是以下任何组合:

该标志可以通过 windowSoftInputMode属性在您的主题中进行控制。

systemUiVisibility

Added in API level 11
int systemUiVisibility

控制状态栏的可见性。

也可以看看:

token

Added in API level 1
IBinder token

此窗口的标识符。 这通常会为你填补。

type

Added in API level 1
int type

窗口的一般类型。 有三种主要的窗口类型:

  • Application windows (ranging from FIRST_APPLICATION_WINDOW to LAST_APPLICATION_WINDOW) are normal top-level application windows. For these types of windows, the token must be set to the token of the activity they are a part of (this will normally be done for you if token is null).
  • Sub-windows (ranging from FIRST_SUB_WINDOW to LAST_SUB_WINDOW) are associated with another top-level window. For these types of windows, the token must be the token of the window it is attached to.
  • System windows (ranging from FIRST_SYSTEM_WINDOW to LAST_SYSTEM_WINDOW) are special types of windows for use by the system for specific purposes. They should not normally be used by applications, and a special permission is required to use them.

也可以看看:

verticalMargin

Added in API level 1
float verticalMargin

容器和小部件之间的垂直边距,以容器高度的百分比表示。 请参阅Gravity.apply了解如何使用它。 该字段与y一起添加以提供yAdj参数。

verticalWeight

Added in API level 1
float verticalWeight

指示多少额外空间将垂直分配给与这些LayoutParams关联的视图。 如果不应拉伸视图,请指定0。 否则,额外像素将在所有重量大于0的视图中按比例分配。

windowAnimations

Added in API level 1
int windowAnimations

定义用于此窗口的动画的样式资源。 这必须是一个系统资源; 它不能成为应用程序资源,因为窗口管理器无权访问应用程序。

x

Added in API level 1
int x

X窗口的位置。 使用默认的重力会被忽略。 当使用LEFTSTARTRIGHTEND它会提供与给定边缘的偏移。

y

Added in API level 1
int y

Y窗口的位置。 使用默认的重力会被忽略。 使用TOPBOTTOM它会提供给定边的偏移量。

Public constructors

WindowManager.LayoutParams

Added in API level 1
WindowManager.LayoutParams ()

WindowManager.LayoutParams

Added in API level 1
WindowManager.LayoutParams (int _type)

Parameters
_type int

WindowManager.LayoutParams

Added in API level 1
WindowManager.LayoutParams (int _type, 
                int _flags)

Parameters
_type int
_flags int

WindowManager.LayoutParams

Added in API level 1
WindowManager.LayoutParams (int _type, 
                int _flags, 
                int _format)

Parameters
_type int
_flags int
_format int

WindowManager.LayoutParams

Added in API level 1
WindowManager.LayoutParams (int w, 
                int h, 
                int _type, 
                int _flags, 
                int _format)

Parameters
w int
h int
_type int
_flags int
_format int

WindowManager.LayoutParams

Added in API level 1
WindowManager.LayoutParams (int w, 
                int h, 
                int xpos, 
                int ypos, 
                int _type, 
                int _flags, 
                int _format)

Parameters
w int
h int
xpos int
ypos int
_type int
_flags int
_format int

WindowManager.LayoutParams

Added in API level 1
WindowManager.LayoutParams (Parcel in)

Parameters
in Parcel

Public methods

copyFrom

Added in API level 1
int copyFrom (WindowManager.LayoutParams o)

Parameters
o WindowManager.LayoutParams
Returns
int

debug

Added in API level 1
String debug (String output)

返回此组布局参数的字符串表示形式。

Parameters
output String: the String to prepend to the internal representation
Returns
String a String with the following format: output + "ViewGroup.LayoutParams={ width=WIDTH, height=HEIGHT }"

describeContents

Added in API level 1
int describeContents ()

描述此Parcelable实例的封送表示中包含的特殊对象的种类。 例如,如果对象在writeToParcel(Parcel, int)的输出中包含writeToParcel(Parcel, int) ,则此方法的返回值必须包含CONTENTS_FILE_DESCRIPTOR位。

Returns
int a bitmask indicating the set of special object types marshaled by this Parcelable object instance.

getTitle

Added in API level 1
CharSequence getTitle ()

Returns
CharSequence

mayUseInputMethod

Added in API level 3
boolean mayUseInputMethod (int flags)

给定一组特定的窗口管理器标志,确定这样一个窗口是否可能是焦点对应的输入方法的目标。 特别是,这将检查FLAG_NOT_FOCUSABLEFLAG_ALT_FOCUSABLE_IM标志,如果两者的组合对应于需要位于输入方法后面的窗口,以便用户可以键入该窗口,则返回true。

Parameters
flags int: The current window manager flags.
Returns
boolean Returns true if such a window should be behind/interact with an input method, false if not.

setTitle

Added in API level 1
void setTitle (CharSequence title)

Parameters
title CharSequence

toString

Added in API level 1
String toString ()

返回对象的字符串表示形式。 一般来说, toString方法返回一个“文本表示”该对象的字符串。 结果应该是一个简洁但内容丰富的表述,对于一个人来说很容易阅读。 建议所有子类重写此方法。

ObjecttoString方法返回一个字符串,其中包含对象为实例的类的名称,符号字符“ @ ”以及对象的哈希代码的无符号十六进制表示形式。 换句话说,这个方法返回一个字符串,其值等于:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Returns
String a string representation of the object.

writeToParcel

Added in API level 1
void writeToParcel (Parcel out, 
                int parcelableFlags)

将此对象平铺到一个包裹中。

Parameters
out Parcel: The Parcel in which the object should be written.
parcelableFlags int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE.

Hooray!