• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Enums
2<!--Kit: ArkUI-->
3<!--Subsystem: Window-->
4<!--Owner: @waterwin-->
5<!--Designer: @nyankomiya-->
6<!--Tester: @qinliwen0417-->
7<!--Adviser: @ge-yafang-->
8
9> **说明:**
10>
11> 本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
12
13## WindowType<sup>7+</sup>
14
15窗口类型枚举。
16
17**系统能力:** SystemCapability.WindowManager.WindowManager.Core
18
19| 名称                                  | 值 | 说明                                                                                     |
20|-------------------------------------| ------ |----------------------------------------------------------------------------------------|
21| TYPE_APP                            | 0      | 表示应用子窗口。<br>**模型约束:** 此接口仅可在FA模型下使用。                                                   |
22| TYPE_SYSTEM_ALERT<sup>(deprecated)</sup>               | 1     | 表示系统告警窗口。<br>- **说明:** 从API version 11开始废弃。<br>- 从API version 7开始支持。                           |
23| TYPE_FLOAT<sup>9+</sup>             | 8      | 表示悬浮窗。<br>**模型约束:** 此接口仅可在Stage模型下使用。 <br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。|
24| TYPE_DIALOG<sup>10+</sup>           | 16      | 表示模态窗口。<br>**模型约束:** 此接口仅可在Stage模型下使用。                                                 <br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。|
25| TYPE_MAIN<sup>18+</sup>             | 32      | 表示应用主窗口。<br>此窗口类型不支持在创建窗口时使用,仅可在getWindowProperties接口的返回值中用于读取。                               |
26
27## AvoidAreaType<sup>7+</sup>
28
29窗口内容需要规避区域的类型枚举。
30
31**系统能力:** SystemCapability.WindowManager.WindowManager.Core
32
33**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
34
35| 名称                             | 值   | 说明                                                         |
36| -------------------------------- | ---- | ------------------------------------------------------------ |
37| TYPE_SYSTEM                      | 0    | 表示系统默认区域。<!--RP11-->包含状态栏和三键导航栏区域。<!--RP11End-->       |
38| TYPE_CUTOUT                      | 1    | 表示刘海屏区域。                                                              |
39| TYPE_SYSTEM_GESTURE<sup>9+</sup> | 2    | 表示手势区域。当前,各设备均无此类型避让区域。                                    |
40| TYPE_KEYBOARD<sup>9+</sup>       | 3    | 表示软键盘区域。                                                              |
41| TYPE_NAVIGATION_INDICATOR<sup>11+</sup> | 4    | 表示底部导航区域。<!--RP12-->OpenHarmony各设备不支持此能力。<!--RP12End-->                             |
42
43## Orientation<sup>9+</sup>
44
45窗口显示方向类型枚举。<!--Del-->不同枚举值之间的区别可查询[窗口Orientation枚举值8\~10或12和枚举值13\~16的区别(API9)](../../faqs/faqs-window-manager.md#窗口orientation枚举值810或12和枚举值1316的区别api9)。<!--DelEnd-->
46
47| 名称                                  | 值   | 说明                          |
48| ------------------------------------- | ---- | ----------------------------- |
49| UNSPECIFIED                           | 0    | 表示未定义方向模式,由系统判定。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
50| PORTRAIT                              | 1    | 表示竖屏显示模式。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core<br> **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。|
51| LANDSCAPE                             | 2    | 表示横屏显示模式。<br> **原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
52| PORTRAIT_INVERTED                     | 3    | 表示反向竖屏显示模式。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core<br> **原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。|
53| LANDSCAPE_INVERTED                    | 4    | 表示反向横屏显示模式。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core<br> **原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。|
54| AUTO_ROTATION                         | 5    | 跟随传感器自动旋转,可以旋转到竖屏、横屏、反向竖屏、反向横屏四个方向。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core<br> **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。|
55| AUTO_ROTATION_PORTRAIT                | 6    | 跟随传感器自动竖向旋转,可以旋转到竖屏、反向竖屏,无法旋转到横屏、反向横屏。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
56| AUTO_ROTATION_LANDSCAPE               | 7    | 跟随传感器自动横向旋转,可以旋转到横屏、反向横屏,无法旋转到竖屏、反向竖屏。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core。<br> **原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。|
57| AUTO_ROTATION_RESTRICTED              | 8    | 跟随传感器自动旋转,可以旋转到竖屏、横屏、反向竖屏、反向横屏四个方向,且受控制中心的旋转开关控制。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core<br> **原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。|
58| AUTO_ROTATION_PORTRAIT_RESTRICTED     | 9    | 跟随传感器自动竖向旋转,可以旋转到竖屏、反向竖屏,无法旋转到横屏、反向横屏,且受控制中心的旋转开关控制。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
59| AUTO_ROTATION_LANDSCAPE_RESTRICTED    | 10   | 跟随传感器自动横向旋转,可以旋转到横屏、反向横屏,无法旋转到竖屏、反向竖屏,且受控制中心的旋转开关控制。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
60| LOCKED                                | 11   | 表示锁定模式。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
61| AUTO_ROTATION_UNSPECIFIED<sup>12+</sup>        | 12   | 跟随传感器自动旋转,受控制中心的旋转开关控制,且可旋转方向受系统判定(如在某种设备,可以旋转到竖屏、横屏、反向横屏三个方向,无法旋转到反向竖屏)。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br> **系统能力:** SystemCapability.Window.SessionManager|
62| USER_ROTATION_PORTRAIT<sup>12+</sup>           | 13   | 调用时临时旋转到竖屏,之后跟随传感器自动旋转,受控制中心的旋转开关控制,且可旋转方向受系统判定。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br> **系统能力:** SystemCapability.Window.SessionManager|
63| USER_ROTATION_LANDSCAPE<sup>12+</sup>          | 14   | 调用时临时旋转到横屏,之后跟随传感器自动旋转,受控制中心的旋转开关控制,且可旋转方向受系统判定。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br> **系统能力:** SystemCapability.Window.SessionManager|
64| USER_ROTATION_PORTRAIT_INVERTED<sup>12+</sup>  | 15   | 调用时临时旋转到反向竖屏,之后跟随传感器自动旋转,受控制中心的旋转开关控制,且可旋转方向受系统判定。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br> **系统能力:** SystemCapability.Window.SessionManager|
65| USER_ROTATION_LANDSCAPE_INVERTED<sup>12+</sup> | 16   | 调用时临时旋转到反向横屏,之后跟随传感器自动旋转,受控制中心的旋转开关控制,且可旋转方向受系统判定。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br> **系统能力:** SystemCapability.Window.SessionManager|
66| FOLLOW_DESKTOP<sup>12+</sup>                   | 17   | 表示跟随桌面的旋转模式。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br> **系统能力:** SystemCapability.Window.SessionManager|
67
68## RectChangeReason<sup>12+</sup>
69
70窗口矩形(窗口位置及窗口大小)变化的原因。
71
72**系统能力:** SystemCapability.Window.SessionManager
73
74**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
75
76| 名称                  | 值   | 说明                                                         |
77| --------------------- | ---- | ------------------------------------------------------------ |
78| UNDEFINED                 | 0    | 默认值。                                                   |
79| MAXIMIZE                | 1    | 窗口最大化。                                                   |
80| RECOVER              | 2    | 窗口恢复到上一次的状态。                                                   |
81| MOVE | 3    | 窗口拖拽移动。 |
82| DRAG  | 4    | 窗口拖拽缩放。 |
83| DRAG_START  | 5    | 窗口开始拖拽缩放。 |
84| DRAG_END  | 6    | 窗口结束拖拽缩放。 |
85
86## ColorSpace<sup>8+</sup>
87
88色域模式。
89
90**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
91
92**系统能力:** SystemCapability.WindowManager.WindowManager.Core
93
94| 名称       | 值 | 说明           |
95| ---------- | ------ | -------------- |
96| DEFAULT    | 0      | 默认SRGB色域模式。 |
97| WIDE_GAMUT | 1      | 广色域模式。   |
98
99## WindowEventType<sup>10+</sup>
100
101窗口生命周期。
102
103**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
104
105| 名称       | 值 | 说明       |
106| ---------- | ------ | ---------- |
107| WINDOW_SHOWN      | 1      | 切到前台。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
108| WINDOW_ACTIVE     | 2      | 获焦状态。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
109| WINDOW_INACTIVE   | 3      | 失焦状态。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
110| WINDOW_HIDDEN     | 4      | 切到后台。<br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
111| WINDOW_DESTROYED<sup>11+</sup>  | 7      | 窗口销毁。<br> **系统能力:** SystemCapability.Window.SessionManager|
112
113## WindowStatusType<sup>11+</sup>
114
115窗口模式枚举。
116
117**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
118
119**系统能力:** SystemCapability.Window.SessionManager
120
121| 名称       | 值   | 说明                          |
122| ---------- | ---- | ----------------------------- |
123| UNDEFINED  | 0    | 表示APP未定义窗口模式。       |
124| FULL_SCREEN | 1    | 表示APP全屏模式,在2in1设备中,窗口铺满整个屏幕,且无dock栏和状态栏。             |
125| MAXIMIZE    | 2    | 表示APP窗口最大化模式,在2in1设备中,窗口铺满整个屏幕,有dock栏和状态栏。   |
126| MINIMIZE    | 3    | 表示APP窗口最小化模式。   |
127| FLOATING    | 4    | 表示APP自由悬浮形式窗口模式。   |
128| SPLIT_SCREEN  | 5    | 表示APP分屏模式。   |
129
130## MaximizePresentation<sup>12+</sup>
131
132窗口最大化时的布局枚举。
133
134**系统能力:**  SystemCapability.Window.SessionManager
135
136| 名称       | 值   | 说明                          |
137| ---------- | ---- | ----------------------------- |
138| FOLLOW_APP_IMMERSIVE_SETTING  | 0    | 最大化时,跟随应用app当前设置的全屏模式。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。       |
139| EXIT_IMMERSIVE | 1    | 最大化时,如果当前窗口设置了全屏模式会退出全屏模式。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。             |
140| ENTER_IMMERSIVE    | 2    | 最大化时,进入全屏模式,鼠标Hover在热区上显示窗口标题栏和dock栏。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。   |
141| ENTER_IMMERSIVE_DISABLE_TITLE_AND_DOCK_HOVER<sup>14+</sup>    | 3    | 最大化时,进入全屏模式,鼠标Hover在热区上不显示窗口标题栏和dock栏。<br/>**原子化服务API:** 从API version 14开始,该接口支持在原子化服务中使用。   |
142
143## WindowAnimationCurve<sup>20+</sup>
144
145窗口动画曲线类型。
146
147**原子化服务API:** 从API version 20开始,该接口支持在原子化服务中使用。
148
149**系统能力:**  SystemCapability.Window.SessionManager
150
151| 名称                | 值   | 说明                                                         |
152| ------------------- | ---- | ------------------------------------------------------------ |
153| LINEAR              | 0    | 表示动画从头到尾的速度都是相同的。<br/>使用该曲线类型时[WindowAnimationConfig](arkts-apis-window-i.md#windowanimationconfig20)中duration必填。<br/>使用该曲线类型时[WindowAnimationConfig](arkts-apis-window-i.md#windowanimationconfig20)中param选填,且不生效。 |
154| INTERPOLATION_SPRING | 1    | 表示插值器弹簧曲线,一条从0到1的动画曲线,实际动画值根据曲线进行插值计算。动画时间由曲线参数决定,不受[WindowAnimationConfig](arkts-apis-window-i.md#windowanimationconfig20)中的duration参数控制。<br/>使用该曲线类型时[WindowAnimationConfig](arkts-apis-window-i.md#windowanimationconfig20)中duration选填,且不生效。<br/>使用该曲线类型时[WindowAnimationConfig](arkts-apis-window-i.md#windowanimationconfig20)中param必填。 |
155| CUBIC_BEZIER | 2 | 表示贝塞尔曲线。<br/>使用该曲线类型时[WindowAnimationConfig](arkts-apis-window-i.md#windowanimationconfig20)中的param和duration为必填项。 |
156
157## WindowTransitionType<sup>20+</sup>
158
159窗口转场动画类型枚举。
160
161**原子化服务API:** 从API version 20开始,该接口支持在原子化服务中使用。
162
163**系统能力:**  SystemCapability.Window.SessionManager
164
165| 名称    | 值   | 说明                       |
166| ------- | ---- | -------------------------- |
167| DESTROY | 0    | 表示窗口销毁时的转场动画。 |
168
169## AnimationType<sup>20+</sup>
170
171窗口动画类型枚举。
172
173**系统能力:**  SystemCapability.Window.SessionManager
174
175| 名称    | 值   | 说明                       |
176| ------- | ---- | -------------------------- |
177| FADE_IN_OUT | 0    | 表示窗口动画类型为淡入淡出。淡入动画在窗口显示过程中生效,淡出动画在窗口隐藏过程中生效。 |
178
179## WindowAnchor<sup>20+</sup>
180
181窗口锚点枚举。
182
183**系统能力:**  SystemCapability.Window.SessionManager
184
185| 名称       | 值   | 说明                          |
186| ---------- | ---- | ----------------------------- |
187| TOP_START  | 0    | 窗口左上角。|
188| TOP  | 1    | 窗口上边界横向居中点。|
189| TOP_END  | 2    | 窗口右上角。|
190| START  | 3    | 窗口左边界纵向居中点。|
191| CENTER  | 4    | 窗口横向和纵向居中点。|
192| END  | 5    | 窗口右边界纵向居中点。|
193| BOTTOM_START  | 6    | 窗口左下角。|
194| BOTTOM  | 7    | 窗口下边界横向居中点。|
195| BOTTOM_END  | 8    | 窗口右下角。|
196
197## RotationChangeType<sup>19+</sup>
198
199窗口旋转事件类型。
200
201**原子化服务API:** 从API version 19开始,该接口支持在原子化服务中使用。
202
203**系统能力:**  SystemCapability.Window.SessionManager
204
205| 名称   |  值 | 说明                   |
206| ------ | ---- | --------------------- |
207| WINDOW_WILL_ROTATE| 0 | 窗口即将旋转。 |
208| WINDOW_DID_ROTATE | 1 | 窗口旋转结束。 |
209
210## RectType<sup>19+</sup>
211
212窗口矩形区域坐标系类型。
213
214**原子化服务API:** 从API version 19开始,该接口支持在原子化服务中使用。
215
216**系统能力:**  SystemCapability.Window.SessionManager
217
218| 名称   | 值 | 说明                   |
219| ------ | ---- | --------------------- |
220| RELATIVE_TO_SCREEN | 0 | 窗口矩形区域相对于屏幕坐标系。 |
221| RELATIVE_TO_PARENT_WINDOW | 1 | 窗口矩形区域相对于父窗口坐标系。 |
222
223## GlobalWindowMode<sup>20+</sup>
224
225窗口模式。
226
227**原子化服务API:** 从API version 20开始,该接口支持在原子化服务中使用。
228
229**系统能力:**  SystemCapability.Window.SessionManager
230
231| 名称   | 值 | 说明                    |
232| ------ | --- | ------------------------ |
233| FULLSCREEN | 1 | 全屏窗口,二进制从右往左,第一个二进制位为1。  |
234| SPLIT  | 1 << 1 | 分屏窗口,二进制从右往左,第二个二进制位为1。 |
235| FLOAT   | 1 << 2  | 悬浮窗,二进制从右往左,第三个二进制位为1。 |
236| PIP   | 1 << 3  | 画中画,二进制从右往左,第四个二进制位为1。 |
237
238## WindowStageEventType<sup>9+</sup>
239
240WindowStage生命周期。
241
242**模型约束:** 此接口仅可在Stage模型下使用。
243
244**系统能力:** SystemCapability.WindowManager.WindowManager.Core
245
246**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
247
248| 名称       | 值 | 说明       |
249| ---------- | ------ | ---------- |
250| SHOWN      | 1      | 切到前台,例如点击应用图标启动,无论是首次启动还是从后台启动均会触发。 |
251| ACTIVE     | 2      | 获焦状态,例如应用窗口处理点击事件后的状态、应用启动后的状态。 |
252| INACTIVE   | 3      | 失焦状态,例如打开新应用或点击其他窗口后,原获焦窗口的状态。 |
253| HIDDEN     | 4      | 切到后台,例如应用上滑退出、应用窗口关闭。 |
254| RESUMED<sup>11+</sup> | 5      | 前台可交互状态,例如打开应用后,应用处于前台,且可以与用户交互的状态。 |
255| PAUSED<sup>11+</sup>  | 6      | 前台不可交互状态,例如应用在前台时,进入多任务界面,应用依然处于前台但不可以与用户交互的状态。 |
256
257## WindowStageLifecycleEventType<sup>20+</sup>
258
259WindowStage生命周期的状态类型枚举。
260
261**模型约束:** 此接口仅可在Stage模型下使用。
262
263**系统能力:** SystemCapability.Window.SessionManager
264
265| 名称       | 值 | 说明       |
266| ---------- | ------ | ---------- |
267| SHOWN      | 1      | 切到前台,例如点击应用图标启动,无论是首次启动还是从后台启动均会触发。 |
268| RESUMED    | 2      | 前台可交互状态,例如打开应用后,应用处于前台,且可以与用户交互的状态。 |
269| PAUSED     | 3      | 前台不可交互状态,例如应用在前台时,进入多任务界面,应用依然处于前台但不可以与用户交互的状态。 |
270| HIDDEN     | 4      | 切到后台,例如应用上滑退出、应用窗口关闭。 |
271
272## ModalityType<sup>14+</sup>
273
274子窗口模态类型枚举。
275
276**系统能力:** SystemCapability.Window.SessionManager
277
278**原子化服务API:** 从API version 14开始,该接口支持在原子化服务中使用。
279
280| 名称                 | 值      | 说明       |
281| -------------------- | ------ | ---------- |
282| WINDOW_MODALITY      | 0      | 模态子窗类型为模窗口子窗,当仅需要其父级窗口不响应用户操作时,可选此参数。 |
283| APPLICATION_MODALITY | 1      | 模态子窗类型为模应用子窗,该窗口仅在[自由窗口](../../windowmanager/window-terminology.md#自由窗口)状态下生效。<br> 除其父级窗口外还需要该应用其他实例的窗口不响应用户操作时,可选此参数。<br> **设备行为差异:** 该枚举在2in1设备、Tablet设备中可正常调用,在其他设备类型中作为入参使用时,对应接口返回801错误码。 |
284
285## ScreenshotEventType<sup>20+</sup>
286
287截屏事件类型枚举。
288
289**系统能力:**  SystemCapability.WindowManager.WindowManager.Core
290
291| 名称   | 值 | 说明                   |
292| ------ | ---- | --------------------- |
293| SYSTEM_SCREENSHOT | 0 | 系统截屏成功。 |
294| SYSTEM_SCREENSHOT_ABORT | 1 | 系统截屏中止。 |
295| SCROLL_SHOT_START | 2 | 滚动截屏开始。 |
296| SCROLL_SHOT_END | 3 | 滚动截屏结束。 |
297| SCROLL_SHOT_ABORT | 4 | 滚动截屏中止。 |
298