ZMS:最后一个子窗口-创建子窗口时,客户端可以指定窗口类型介于1000-1999之间,
而WindowManagerService在进行窗口叠加时,会动态调整层值。
*/
public static final int LAST_SUB_WINDOW = 1999;
/**
Start of system-specific window types. These are not normally
created by applications.
ZMS:首个系统窗口-系统窗口,系统窗口不需要对应任何Activity,也不需要有父窗口,
对于应用程序而言,理论上是无法创建系统窗口的,因为所有的应用程序都没有这个权限,
然而系统进程却可以创建系统窗口。
*/
public static final int FIRST_SYSTEM_WINDOW = 2000;
/**
Window type: the status bar. There can be only one status bar
window; it is placed at the top of the screen, and all other
windows are shifted down so they are below it.
In multiuser systems shows on all users’ windows.
ZMS:状态栏窗口,层值2000。
*/
public static final int TYPE_STATUS_BAR = FIRST_SYSTEM_WINDOW;
/**
Window type: the search bar. There can be only one search bar
window; it is placed at the top of the screen.
In multiuser systems shows on all users’ windows.
ZMS:搜索条窗口,层值2001。
*/
public static final int TYPE_SEARCH_BAR = FIRST_SYSTEM_WINDOW+1;
/**
Window type: phone. These are non-application windows providing
user interaction with the phone (in particular incoming calls).
These windows are normally placed above all applications, but behind
the status bar.
In multiuser systems shows on all users’ windows.
ZMS:来电显示窗口
*/
public static final int TYPE_PHONE = FIRST_SYSTEM_WINDOW+2;
/**
Window type: system window, such as low power alert. These windows
are always on top of application windows.
In multiuser systems shows only on the owning user’s window.
ZMS:警告对话框
*/
public static final int TYPE_SYSTEM_ALERT = FIRST_SYSTEM_WINDOW+3;
/**
Window type: keyguard window.
In multiuser systems shows on all users’ windows.
@removed
ZMS:锁屏
*/
public static final int TYPE_KEYGUARD = FIRST_SYSTEM_WINDOW+4;
/**
Window type: transient notifications.
In multiuser systems shows only on the owning user’s window.
ZMS:Toast窗口
*/
public static final int TYPE_TOAST = FIRST_SYSTEM_WINDOW+5;
/**
Window type: system overlay windows, which need to be displayed
on top of everything else. These windows must not take input
focus, or they will interfere with the keyguard.
In multiuser systems shows only on the owning user’s window.
ZMS:系统覆盖窗口,显示在所有窗口之上
*/
public static final int TYPE_SYSTEM_OVERLAY = FIRST_SYSTEM_WINDOW+6;
/**
Window type: priority phone UI, which needs to be displayed even if
the keyguard is active. These windows must not take input
focus, or they will interfere with the keyguard.
In multiuser systems shows on all users’ windows.
ZMS:在屏幕保护下的来电显示窗口
*/
public static final int TYPE_PRIORITY_PHONE = FIRST_SYSTEM_WINDOW+7;
/**
Window type: panel that slides out from the status bar
In multiuser systems shows on all users’ windows.
ZMS:滑动状态栏后出现的窗口
*/
public static final int TYPE_SYSTEM_DIALOG = FIRST_SYSTEM_WINDOW+8;
/**
Window type: dialogs that the keyguard shows
In multiuser systems shows on all users’ windows.
ZMS:锁屏弹出的对话框
*/
public static final int TYPE_KEYGUARD_DIALOG = FIRST_SYSTEM_WINDOW+9;
/**
Window type: internal system error windows, appear on top of
everything they can.
In multiuser systems shows only on the owning user’s window.
ZMS:系统错误窗口
*/
public static final int TYPE_SYSTEM_ERROR = FIRST_SYSTEM_WINDOW+10;
/**
Window type: internal input methods windows, which appear above
the normal UI. Application windows may be resized or panned to keep
the input focus visible while this window is displayed.
In multiuser systems shows only on the owning user’s window.
ZMS:输入法窗口
*/
public static final int TYPE_INPUT_METHOD = FIRST_SYSTEM_WINDOW+11;
/**
Window type: internal input methods dialog windows, which appear above
the current input method window.
In multiuser systems shows only on the owning user’s window.
ZMS:输入法中备选框对应的窗口
*/
public static final int TYPE_INPUT_METHOD_DIALOG= FIRST_SYSTEM_WINDOW+12;
/**
Window type: wallpaper window, placed behind any window that wants
to sit on top of the wallpaper.
In multiuser systems shows only on the owning user’s window.
ZMS:墙纸对应的窗口
*/
public static final int TYPE_WALLPAPER = FIRST_SYSTEM_WINDOW+13;
/**
Window type: panel that slides out from over the status bar
In multiuser systems shows on all users’ windows.
ZMS:滑动状态栏后出现的面板窗口
*/
public static final int TYPE_STATUS_BAR_PANEL = FIRST_SYSTEM_WINDOW+14;
/**
Window type: secure system overlay windows, which need to be displayed
on top of everything else. These windows must not take input
focus, or they will interfere with the keyguard.
This is exactly like {@link #TYPE_SYSTEM_OVERLAY} except that only the
system itself is allowed to create these overlays. Applications cannot
obtain permission to create secure system overlays.
In multiuser systems shows only on the owning user’s window.
@hide
ZMS:安全系统覆盖窗口,显示在所有窗口之上。
*/
public static final int TYPE_SECURE_SYSTEM_OVERLAY = FIRST_SYSTEM_WINDOW+15;
/**
Window type: the drag-and-drop pseudowindow. There is only one
drag layer (at most), and it is placed on top of all other windows.
In multiuser systems shows only on the owning user’s window.
@hide
ZMS:拖动放开窗口。
*/
public static final int TYPE_DRAG = FIRST_SYSTEM_WINDOW+16;
/**
Window type: panel that slides out from under the status bar
In multiuser systems shows on all users’ windows.
@hide
ZMS:滑动状态栏显示的面板窗口。
*/
public static final int TYPE_STATUS_BAR_SUB_PANEL = FIRST_SYSTEM_WINDOW+17;
/**
Window type: (mouse) pointer
In multiuser systems shows on all users’ windows.
@hide
ZMS:鼠标窗口。
*/
public static final int TYPE_POINTER = FIRST_SYSTEM_WINDOW+18;
/**
Window type: Navigation bar (when distinct from status bar)
In mult 《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》无偿开源 徽信搜索公众号【编程进阶路】 iuser systems shows on all users’ windows.
@hide
ZMS:导航栏窗口
*/
public static final int TYPE_NAVIGATION_BAR = FIRST_SYSTEM_WINDOW+19;
/**
Window type: The volume level overlay/dialog shown when the user
changes the system volume.
In multiuser systems shows on all users’ windows.
@hide
ZMS:音量调节窗口
*/
public static final int TYPE_VOLUME_OVERLAY = FIRST_SYSTEM_WINDOW+20;
/**
Window type: The boot progress dialog, goes on top of everything
in the world.
In multiuser systems shows on all users’ windows.
@hide
ZMS:系统启动进程对话框窗口-在其他内容之上。
*/
public static final int TYPE_BOOT_PROGRESS = FIRST_SYSTEM_WINDOW+21;
/**
Window type: Fake window to consume touch events when the navigation
bar is hidden.
In multiuser systems shows on all users’ windows.
@hide
ZMS:隐藏导航栏时消化触摸事件窗口-当导航栏隐藏时,用来处理消费触摸事件的模拟窗口。
*/
public static final int TYPE_HIDDEN_NAV_CONSUMER = FIRST_SYSTEM_WINDOW+22;
/**
Window type: Dreams (screen saver) window, just above keyguard.
In multiuser systems shows only on the owning user’s window.
@hide
ZMS:LDreams屏保窗口,仅在锁屏窗口之上。
*/
public static final int TYPE_DREAM = FIRST_SYSTEM_WINDOW+23;
/**
Window type: Navigation bar panel (when navigation bar is distinct from status bar)
In multiuser systems shows on all users’ windows.
@hide
ZMS:导航栏面板窗口
*/
public static final int TYPE_NAVIGATION_BAR_PANEL = FIRST_SYSTEM_WINDOW+24;
/**
Window type: Behind the universe of the real windows.
In multiuser systems shows on all users’ windows.
@hide
ZMS:全局背景窗口
*/
public static final int TYPE_UNIVERSE_BACKGROUND = FIRST_SYSTEM_WINDOW+25;
/**
Window type: Display overlay window. Used to simulate secondary display devices.
In multiuser systems shows on all users’ windows.
@hide
ZMS:显示重绘窗口,用来模拟第二屏显示设备。
*/
public static final int TYPE_DISPLAY_OVERLAY = FIRST_SYSTEM_WINDOW+26;
/**
Window type: Magnification overlay window. Used to highlight the magnified
portion of a display when accessibility magnification is enabled.
In multiuser systems shows on all users’ windows.
@hide