• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Interfaces (其他)
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## Configuration<sup>9+</sup>
14
15创建子窗口或系统窗口时的参数。
16
17**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
18
19| 名称 | 类型 | 只读 | 可选 | 说明                                                                          |
20| ---------- | -------------------------- | -- | -- |-----------------------------------------------------------------------------|
21| name       | string                     | 否 | 否 | 窗口名字。<br>**系统能力:** SystemCapability.WindowManager.WindowManager.Core                                               |
22| windowType | [WindowType](arkts-apis-window-e.md#windowtype7) | 否 | 否 | 窗口类型。<br>**系统能力:** SystemCapability.WindowManager.WindowManager.Core                        |
23| ctx        | [BaseContext](../apis-ability-kit/js-apis-inner-application-baseContext.md) | 否 | 是 | 当前应用上下文信息。不设置,则默认为空。<br>FA模型下不需要使用该参数,即可创建子窗口,使用该参数时会报错。<br>Stage模型必须使用该参数,用于创建悬浮窗、模态窗或系统窗口。 <br>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
24| displayId  | number                     | 否 | 是 | 当前物理屏幕id。不设置,则默认为-1,该参数应为整数。<br>**系统能力:** SystemCapability.WindowManager.WindowManager.Core     |
25| parentId   | number                     | 否 | 是 | 父窗口id。不设置,则默认为-1,该参数应为整数。<br>**系统能力:** SystemCapability.WindowManager.WindowManager.Core                                               |
26| decorEnabled<sup>12+</sup> | boolean | 否 | 是 | 是否显示窗口装饰,仅在windowType为TYPE_DIALOG时生效。true表示显示,false表示不显示。此参数默认值为false。<br>**系统能力:** SystemCapability.Window.SessionManager |
27| title<sup>12+</sup> | string| 否 | 是 | `decorEnabled`属性设置为true时,窗口的标题内容。标题显示区域最右端不超过系统三键区域最左端,超过部分以省略号表示。不设置,则默认为空字符串。 <br>**系统能力:** SystemCapability.Window.SessionManager |
28
29## SystemBarProperties
30
31状态栏<!--Del-->、三键导航栏的<!--DelEnd-->属性。在设置窗口级状态栏<!--Del-->、三键导航栏<!--DelEnd-->属性时使用。
32
33**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
34
35| 名称                                   | 类型 | 只读 | 可选 | 说明                                                         |
36| -------------------------------------- | -------- | ---- | ---- | ------------------------------------------------------------ |
37| statusBarColor                         | string   |  否  |  是   | 状态栏背景颜色,为十六进制RGB或ARGB颜色,不区分大小写,例如`'#00FF00'`或`'#FF00FF00'`。默认值:`'#66000000'`。 <br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
38| isStatusBarLightIcon<sup>7+</sup>      | boolean  |  否  |  是   | 状态栏图标是否为高亮状态。true表示高亮;false表示不高亮。默认值:false。 <br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
39| statusBarContentColor<sup>8+</sup>     | string   |  否  |  是   | 状态栏文字颜色。当设置此属性后,`isStatusBarLightIcon`属性设置无效。默认值:`'#E5FFFFFF'`。 <br> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
40| navigationBarColor                     | string   |  否  |  是   | 三键导航栏背景颜色,为十六进制RGB或ARGB颜色,不区分大小写,例如`'#00FF00'`或`'#FF00FF00'`。默认值:`'#66000000'`。 <br><!--RP13--><!--RP13End--> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
41| isNavigationBarLightIcon<sup>7+</sup>  | boolean  |  否  |  是   | 三键导航栏图标是否为高亮状态。true表示高亮;false表示不高亮。默认值:false。 <br><!--RP13--><!--RP13End--> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
42| navigationBarContentColor<sup>8+</sup> | string   |  否  |  是   | 三键导航栏文字颜色。当设置此属性后,`isNavigationBarLightIcon`属性设置无效。默认值:`'#E5FFFFFF'`。 <br><!--RP13--><!--RP13End--> **系统能力:** SystemCapability.WindowManager.WindowManager.Core|
43| enableStatusBarAnimation<sup>12+</sup> | boolean  |  否  |  是   | 是否使能状态栏属性变化时动画效果。true表示变化时使能动画效果;false表示没有使能动画效果。默认值:false。 <br> **系统能力:** SystemCapability.Window.SessionManager|
44| enableNavigationBarAnimation<sup>12+</sup> | boolean   |  否  |  是   | 是否使能三键导航栏属性变化时动画效果。true表示变化时使能动画效果;false表示没有使能动画效果。默认值:false。 <br><!--RP13--><!--RP13End--> **系统能力:** SystemCapability.Window.SessionManager|
45
46## StatusBarProperty<sup>18+</sup>
47
48状态栏的属性。在获取状态栏属性信息时返回。
49
50**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。
51
52| 名称                                   | 类型 |  只读 |   可选  | 说明 |
53| ------------------------------------- | -------- | ---- | ---- | ------- |
54| contentColor     | string   |  否  |  否   | 状态栏文字颜色,固定为ARGB格式,如:`#E5FFFFFF`。 <br> **系统能力:** SystemCapability.Window.SessionManager|
55
56## SystemBarStyle<sup>12+</sup>
57
58状态栏的属性。在设置页面级状态栏属性时使用。
59
60**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
61
62**系统能力:** SystemCapability.WindowManager.WindowManager.Core
63
64| 名称   | 类型 | 只读 | 可选 | 说明               |
65| ------ | -------- | ---- | ---- | ------------------ |
66| statusBarContentColor   | string   | 否   | 是   | 状态栏文字颜色。默认值:`'#E5FFFFFF'`。|
67
68## Rect<sup>7+</sup>
69
70窗口矩形区域。
71
72**系统能力:** SystemCapability.WindowManager.WindowManager.Core
73
74**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
75
76| 名称   | 类型 | 只读 | 可选 | 说明               |
77| ------ | -------- | ---- | ---- | ------------------ |
78| left   | number   | 否   | 否   | 矩形区域的左边界,单位为px,该参数为整数。 |
79| top    | number   | 否   | 否   | 矩形区域的上边界,单位为px,该参数应为整数。 |
80| width  | number   | 否   | 否   | 矩形区域的宽度,单位为px,该参数应为整数。 |
81| height | number   | 否   | 否   | 矩形区域的高度,单位为px,该参数应为整数。 |
82
83## AvoidArea<sup>7+</sup>
84
85窗口内容规避区域。如系统栏区域、刘海屏区域、手势区域、软键盘区域等与窗口内容重叠时,需要窗口内容避让的区域。在规避区无法响应用户点击事件。
86
87除此之外还需注意规避区域的如下约束,具体为:
88
89- 底部手势区域中非底部导航条区域支持点击、长按事件透传,不支持拖入。
90
91- 左右侧边手势区域支持点击、长按以及上下滑动事件透传,不支持拖入。
92
93- 底部导航条区域支持长按、点击、拖入事件响应,不支持事件向下透传。
94
95**系统能力:** SystemCapability.WindowManager.WindowManager.Core
96
97**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
98
99| 名称       | 类型      | 只读 | 可选 | 说明               |
100| ---------- | ------------- | ---- | ---- | ------------------ |
101| visible<sup>9+</sup>    | boolean       | 否   | 否   | 规避区域是否可见。true表示可见;false表示不可见。 |
102| leftRect   | [Rect](arkts-apis-window-i.md#rect7) | 否   | 否   | 屏幕左侧的矩形区。 |
103| topRect    | [Rect](arkts-apis-window-i.md#rect7) | 否   | 否   | 屏幕顶部的矩形区。 |
104| rightRect  | [Rect](arkts-apis-window-i.md#rect7) | 否   | 否   | 屏幕右侧的矩形区。 |
105| bottomRect | [Rect](arkts-apis-window-i.md#rect7) | 否   | 否   | 屏幕底部的矩形区。 |
106
107## Size<sup>7+</sup>
108
109窗口大小。
110
111**系统能力:** SystemCapability.WindowManager.WindowManager.Core
112
113**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
114
115| 名称   | 类型 | 只读 | 可选 | 说明       |
116| ------ | -------- | ---- | ---- | ---------- |
117| width  | number   | 否   | 否   | 窗口宽度,单位为px,该参数应为整数。 |
118| height | number   | 否   | 否   | 窗口高度,单位为px,该参数应为整数。 |
119
120## Position<sup>20+</sup>
121
122窗口或组件的位置。
123
124**系统能力:** SystemCapability.Window.SessionManager
125
126| 名称   | 类型 | 只读 | 可选 | 说明       |
127| ------ | -------- | ---- | ---- | ---------- |
128| x      | number   | 否   | 否   | x坐标,单位为px,该参数应为整数。 |
129| y      | number   | 否   | 否   | y坐标,单位为px,该参数应为整数。 |
130
131## RectChangeOptions<sup>12+</sup>
132
133窗口矩形(窗口位置及窗口大小)变化返回的值及变化原因。
134
135**系统能力:** SystemCapability.Window.SessionManager
136
137**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
138
139| 名称       | 类型      | 只读 | 可选 | 说明               |
140| ---------- | ------------- | ---- | ---- | ------------------ |
141| rect   | [Rect](arkts-apis-window-i.md#rect7) | 否   | 否   | 窗口矩形变化后的值。 |
142| reason    | [RectChangeReason](arkts-apis-window-e.md#rectchangereason12) | 否   | 否   | 窗口矩形变化的原因。 |
143
144## AvoidAreaOptions<sup>12+</sup>
145
146系统规避区变化后返回当前规避区域以及规避区域类型。
147
148**系统能力:** SystemCapability.WindowManager.WindowManager.Core
149
150**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
151
152| 名称       | 类型      | 只读 | 可选 | 说明               |
153| ---------- | ------------- | ---- | ---- | ------------------ |
154| type   | [AvoidAreaType](arkts-apis-window-e.md#avoidareatype7) | 否   | 否   | 系统规避区变化后返回的规避区域类型。 |
155| area   | [AvoidArea](arkts-apis-window-i.md#avoidarea7)         | 否   | 否   | 系统规避区变化后返回的规避区域。 |
156
157## WindowProperties
158
159窗口属性。
160
161| 名称                                  | 类型                  | 只读 | 可选 | 说明                                                                                                     |
162| ------------------------------------- | ------------------------- | ---- | ---- |--------------------------------------------------------------------------------------------------------|
163| windowRect<sup>7+</sup>               | [Rect](arkts-apis-window-i.md#rect7)             | 否   | 否   | 窗口尺寸,可在页面生命周期[onPageShow](./arkui-ts/ts-custom-component-lifecycle.md#onpageshow)或应用生命周期[onForeground](../apis-ability-kit/js-apis-app-ability-uiAbility.md#onforeground)阶段获取。<br> **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 <br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
164| drawableRect<sup>11+</sup>            | [Rect](arkts-apis-window-i.md#rect7)             | 否   | 否   | 窗口内的可绘制区域尺寸,其中左边界上边界是相对于窗口计算。在Stage模型下,需要在调用[loadContent()](arkts-apis-window-Window.md#loadcontent9)或[setUIContent()](arkts-apis-window-Window.md#setuicontent9)加载页面内容后使用该接口。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
165| type<sup>7+</sup>                     | [WindowType](arkts-apis-window-e.md#windowtype7) | 否   | 否   | 窗口类型。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
166| isFullScreen                          | boolean                   | 否   | 否   | 是否全屏,默认为false。true表示全屏;false表示非全屏。<br> **原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
167| isLayoutFullScreen<sup>7+</sup>       | boolean                   | 否   | 否   | 窗口是否为沉浸式且处于全屏模式(不在悬浮窗、分屏等场景下),默认为false。true表示沉浸式且处于全屏模式;false表示非沉浸式或非全屏模式。<br> **原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
168| focusable<sup>7+</sup>                | boolean                   | 否   | 否   | 窗口是否可聚焦,默认为true。true表示可聚焦;false表示不可聚焦。 <br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 <br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
169| touchable<sup>7+</sup>                | boolean                   | 否   | 否   | 窗口是否可触摸,默认为true。true表示可触摸;false表示不可触摸。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 <br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
170| brightness                            | number                    | 否   | 否   | 屏幕亮度。该参数为浮点数,可设置的亮度范围为[0.0, 1.0],其取1.0时表示最大亮度值。如果窗口没有设置亮度值,表示亮度跟随系统,此时获取到的亮度值为-1。<br> **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。<br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
171| dimBehindValue<sup>(deprecated)</sup> | number                    | 否   | 否   | 靠后窗口的暗度值。该参数为浮点数,取值范围为[0.0, 1.0],其取1.0表示最暗。<br>- **说明:** 从API version 9开始废弃。<br>- 从API version 7开始支持。当前无可替代接口。<br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
172| isKeepScreenOn                        | boolean                   | 否   | 否   | 屏幕是否常亮,默认为false。true表示常亮;false表示不常亮。<br> **原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 <br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
173| isPrivacyMode<sup>7+</sup>            | boolean                   | 否   | 否   | 隐私模式,默认为false。true表示模式开启;false表示模式关闭。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
174| isRoundCorner<sup>(deprecated)</sup>  | boolean                   | 否   | 否   | 窗口是否为圆角。默认为false。true表示圆角;false表示非圆角。<br>- **说明:** 从API version 9开始废弃。<br/>- 从API version 7开始支持。当前无可替代接口。<br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
175| isTransparent<sup>7+</sup>            | boolean                   | 否   | 否   | 窗口背景是否透明。默认为false。true表示透明;false表示不透明。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
176| id<sup>9+</sup>                       | number                    | 否   | 否   | 窗口ID,默认值为0,该参数应为整数。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
177| displayId<sup>12+</sup>               | number                    | 否   | 是   | 窗口所在屏幕ID,默认返回主屏幕ID,该参数应为整数。<br/>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。<br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
178| name<sup>18+</sup>               | string                    | 否   | 是   | 窗口名字,默认为空字符串。<br/>**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。<br/>**系统能力:** SystemCapability.WindowManager.WindowManager.Core|
179| globalDisplayRect<sup>20+</sup> | [Rect](arkts-apis-window-i.md#rect7)   | 否   | 是   | 全局坐标系下的窗口尺寸。拓展屏场景下以主屏左上角为坐标原点,虚拟屏场景下以所在屏幕组中的主屏左上角为坐标原点。默认值:[0, 0, 0, 0]。<br/>**系统能力:**  SystemCapability.Window.SessionManager |
180
181## DecorButtonStyle<sup>14+</sup>
182
183系统装饰栏按钮样式。
184
185**系统能力:** SystemCapability.Window.SessionManager
186
187| 名称       | 类型      | 只读 | 可选 | 说明               |
188| ---------- | ------------- | ---- | ---- | ------------------ |
189| colorMode   | [ConfigurationConstant.ColorMode](../apis-ability-kit/js-apis-app-ability-configurationConstant.md#colormode) | 否   | 是   | 颜色模式。深色模式下按钮颜色适配为浅色,浅色模式下按钮颜色适配为深色。未设置则默认跟随系统颜色模式。<br/>**原子化服务API:** 从API version 14开始,该接口支持在原子化服务中使用。 |
190| buttonBackgroundSize   | number        | 否   | 是   | 按钮高亮显示时的大小,取值范围20vp-40vp,默认值28vp。<br/>**原子化服务API:** 从API version 14开始,该接口支持在原子化服务中使用。 |
191| spacingBetweenButtons  | number        | 否   | 是   | 按钮间距,取值范围8vp-24vp,默认值12vp。<br/>**原子化服务API:** 从API version 14开始,该接口支持在原子化服务中使用。 |
192| closeButtonRightMargin | number        | 否   | 是   | 关闭按钮右侧距窗口边距,取值范围6vp-22vp,默认值20vp。<br/>**原子化服务API:** 从API version 14开始,该接口支持在原子化服务中使用。 |
193| buttonIconSize<sup>20+</sup> | number        | 否   | 是   | 按键icon的大小,取值范围16vp-24vp,默认值20vp。<br/>**原子化服务API:** 从API version 20开始,该接口支持在原子化服务中使用。 |
194| buttonBackgroundCornerRadius<sup>20+</sup> | number        | 否   | 是   | 按键背板圆角半径,取值范围4vp-8vp,默认值4vp。<br/>**原子化服务API:** 从API version 20开始,该接口支持在原子化服务中使用。 |
195
196## WindowLimits<sup>11+</sup>
197
198窗口尺寸限制参数。窗口存在默认系统大小限制,同时应用可以通过[setWindowLimits](arkts-apis-window-Window.md#setwindowlimits11)设置窗口尺寸限制,或在应用[module.json5配置文件中的abilities标签](../../quick-start/module-configuration-file.md#abilities标签)中配置该属性,最终生效结果由默认系统限制和应用设置的数据取交集得到。
199
200应用可以通过[getWindowLimits](arkts-apis-window-Window.md#getwindowlimits11)获得当前的窗口尺寸限制。
201
202**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
203
204**系统能力:** SystemCapability.Window.SessionManager
205
206| 名称      | 类型   | 只读 | 可选 | 说明                                                         |
207| :-------- | :----- | :--- | :--- | :----------------------------------------------------------- |
208| maxWidth  | number | 否   | 是   | 窗口的最大宽度。单位为px,该参数为整数。值默认为0,表示该属性不发生变化。下限值为0,上限值为系统限定的最大宽度。  |
209| maxHeight | number | 否   | 是   | 窗口的最大高度。单位为px,该参数为整数。值默认为0,表示该属性不发生变化。下限值为0,上限值为系统限定的最大高度。  |
210| minWidth  | number | 否   | 是   | 窗口的最小宽度。单位为px,该参数为整数。值默认为0,表示该属性不发生变化。下限值为0,上限值为系统限定的最小宽度。  |
211| minHeight | number | 否   | 是   | 窗口的最小高度。单位为px,该参数为整数。值默认为0,表示该属性不发生变化。下限值为0,上限值为系统限定的最小高度。  |
212
213## TitleButtonRect<sup>11+</sup>
214
215标题栏上的最小化、最大化、关闭按钮矩形区域,该区域位置坐标相对窗口右上角。
216
217**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
218
219**系统能力:**  SystemCapability.Window.SessionManager
220
221| 名称   | 类型   | 只读 | 可选 | 说明                                       |
222| ------ | ------ | ---- | ---- | ------------------------------------------ |
223| right  | number | 否   | 否   | 矩形区域的右边界,单位为vp,该参数为整数。 |
224| top    | number | 否   | 否   | 矩形区域的上边界,单位为vp,该参数为整数。 |
225| width  | number | 否   | 否   | 矩形区域的宽度,单位为vp,该参数为整数。   |
226| height | number | 否   | 否   | 矩形区域的高度,单位为vp,该参数为整数。   |
227
228## MoveConfiguration<sup>15+</sup>
229
230窗口移动选项。
231
232**原子化服务API:** 从API version 15开始,该接口支持在原子化服务中使用。
233
234**系统能力:**  SystemCapability.Window.SessionManager
235
236| 名称   | 类型   | 只读 | 可选 | 说明                                       |
237| ------ | ------ | ---- | ---- | ------------------------------------------ |
238| displayId | number | 否 | 是 |目标屏幕ID,该参数应为整数,输入非整数时将向下取整。填入该参数时,将移动到相对于目标屏幕左上角的指定位置。此参数不填或传入目标屏幕ID不存在时,将移动到相对于当前屏幕左上角的指定位置。 |
239
240## WindowDensityInfo<sup>15+</sup>
241
242窗口所在显示设备和窗口自定义的显示密度信息,是与像素单位无关的缩放系数,即显示大小缩放系数。
243
244**原子化服务API:** 从API version 15开始,该接口支持在原子化服务中使用。
245
246**系统能力:** SystemCapability.Window.SessionManager
247
248| 名称   | 类型 | 只读 | 可选 | 说明       |
249| ------ | -------- | ---- | ---- | ---------- |
250| systemDensity  | number   | 否   | 否   | 窗口所在屏幕的系统显示大小缩放系数,跟随用户设置变化,该参数变化范围为0.5-4.0。 |
251| defaultDensity | number   | 否   | 否   | 窗口所在屏幕的系统默认显示大小缩放系数,跟随窗口所在屏幕变化,该参数变化范围为0.5-4.0。 |
252| customDensity | number   | 否   | 否   | 窗口自定义设置的显示大小缩放系数,该参数取值范围为0.5-4.0。未设置该参数时,将跟随系统显示大小缩放系数变化。该参数仅主窗口生效,在子窗或系统窗口上等于系统显示大小缩放系数(systemDensity)。 |
253
254## WindowLayoutInfo<sup>15+</sup>
255
256窗口布局信息。
257
258**原子化服务API:** 从API version 15开始,该接口支持在原子化服务中使用。
259
260**系统能力:**  SystemCapability.Window.SessionManager
261
262| 名称   | 类型   | 只读 | 可选 | 说明                                       |
263| ------ | ------ | ---- | ---- |------------------------------------------ |
264| windowRect | [Rect](arkts-apis-window-i.md#rect7)  | 否 | 否 | 窗口尺寸,窗口在屏幕上的实际位置和大小。 |
265
266## KeyboardInfo<sup>18+</sup>
267
268软键盘窗口信息。
269
270**系统能力:** SystemCapability.Window.SessionManager
271
272| 名称   | 类型   | 只读 | 可选 | 说明                                       |
273| ------ | ------ | ---- | ---- | ------------------------------------------ |
274| beginRect | [Rect](arkts-apis-window-i.md#rect7)  |  否  |  否   | 动画开始前软键盘的位置和大小。<br> **原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。 |
275| endRect | [Rect](arkts-apis-window-i.md#rect7)  |  否  |  否   | 动画结束后软键盘的位置和大小。<br> **原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。 |
276| animated<sup>20+</sup> | boolean  |  否  |  是   | 当前是否有显示/隐藏动画,true表示有动画,false表示没有。<br> **原子化服务API:** 从API version 20开始,该接口支持在原子化服务中使用。 |
277| config<sup>20+</sup> | [WindowAnimationConfig](arkts-apis-window-i.md#windowanimationconfig20)  |  否  |  是  | 动画配置信息。<br> **原子化服务API:** 从API version 20开始,该接口支持在原子化服务中使用。 |
278
279## ShowWindowOptions<sup>20+</sup>
280
281显示子窗口或系统窗口时的参数。
282
283**系统能力:** SystemCapability.Window.SessionManager
284
285**原子化服务API:** 从API version 20开始,该接口支持在原子化服务中使用。
286
287| 名称   | 类型   | 只读 | 可选 | 说明                                       |
288| ------ | ------ | ---- | ---- |------------------------------------------ |
289| focusOnShow | boolean  |  否  |  是  | 窗口调用[showWindow()](arkts-apis-window-Window.md#showwindow20)显示时是否自动获焦,默认为true。该参数对主窗、模态窗、dialog窗口不生效。|
290
291## WindowAnimationConfig<sup>20+</sup>
292
293窗口动画参数配置。
294
295**原子化服务API:** 从API version 20开始,该接口支持在原子化服务中使用。
296
297**系统能力:** SystemCapability.Window.SessionManager
298
299| 名称     | 类型                                                      | 只读 | 可选 | 说明                                                         |
300| -------- | --------------------------------------------------------- | ---- | ---- |------------------------------------------------------------ |
301| curve    | [WindowAnimationCurve](arkts-apis-window-e.md#windowanimationcurve20)           |  否  |  否   | 动画曲线类型。                                               |
302| duration | number                                                    |  否  |  是   | 动画播放的时长,单位毫秒(ms)。<br/>默认值:0,最大值:3000。<br/>根据动画曲线类型决定是否必填。 |
303| param    | [WindowAnimationCurveParam](arkts-apis-window-t.md#windowanimationcurveparam20) |  否  |  是   | 动画曲线参数,根据动画曲线类型决定是否必填。                 |
304
305## WindowInfo<sup>18+</sup>
306
307当前窗口的详细信息。
308
309**系统能力:**  SystemCapability.Window.SessionManager
310
311| 名称   | 类型   | 只读 | 可选 | 说明                                       |
312| ------ | ------ | ---- | ---- | ------------------------------------------ |
313| rect  | [Rect](arkts-apis-window-i.md#rect7)   | 否   | 否   | 窗口尺寸。 |
314| bundleName  | string   | 否   | 否   | 应用Bundle的名称。          |
315| abilityName | string   | 否   | 否   | Ability的名称。               |
316| windowId | number | 否   | 否   | 窗口ID。   |
317| windowStatusType | [WindowStatusType](arkts-apis-window-e.md#windowstatustype11) | 否   | 否   | 窗口模式枚举。   |
318| isFocused | boolean | 否   | 是   | 窗口是否获焦。true表示窗口获焦;false表示窗口未获焦。   |
319| globalDisplayRect<sup>20+</sup> | [Rect](arkts-apis-window-i.md#rect7)   | 否   | 是   | 全局坐标系下的窗口尺寸。拓展屏场景下以主屏左上角为坐标原点,虚拟屏场景下以所在屏幕组中的主屏左上角为坐标原点。默认值:[0, 0, 0, 0]。|
320
321## TransitionAnimation<sup>20+</sup>
322
323窗口转场动画配置。
324
325**原子化服务API:** 从API version 20开始,该接口支持在原子化服务中使用。
326
327**系统能力:** SystemCapability.Window.SessionManager
328
329| 名称    | 类型                                              | 只读 | 可选 | 说明                                                         |
330| ------- | ------------------------------------------------- | ---- | ---- |------------------------------------------------------------ |
331| config  | [WindowAnimationConfig](arkts-apis-window-i.md#windowanimationconfig20) |  否  |  否   | 本次转场动画配置。                                           |
332| opacity | number                                            |  否  |  是   | 不透明度,转场动画作用的窗口属性,值为0时窗口完全透明。当动画类型为WindowTransitionType.DESTROY时,代表动画终点的不透明度。取值范围0~1,在动画结束时恢复为1。 |
333
334## StartAnimationParams<sup>20+</sup>
335
336启动动画配置。
337
338仅对同应用的不同ability间跳转生效。
339
340仅在手机设备或平板设备的非自由多窗模式下生效。
341
342仅对全屏应用生效。
343
344**系统能力:** SystemCapability.Window.SessionManager
345| 名称             | 类型                                                                     | 只读 | 可选 | 说明                                                         |
346| ---------------- | ----------------------------------------------------------------------- | ---- | ---- | ------------------------------------------------------------ |
347| type             | [AnimationType](arkts-apis-window-e.md#animationtype20)                 | 否   | 否   | 窗口动画类型。|
348
349## WindowCreateParams<sup>20+</sup>
350
351应用启动时的窗口参数配置。
352
353**系统能力:** SystemCapability.Window.SessionManager
354| 名称             | 类型                                                                     | 只读 | 可选 | 说明                                                         |
355| ---------------- | ----------------------------------------------------------------------- | ---- | ---- | ------------------------------------------------------------ |
356| animationParams             | [StartAnimationParams](arkts-apis-window-i.md#startanimationparams20)                 | 否   | 是   | 启动动画参数配置。默认值为undefined,若不配置将保持系统默认动效。 |
357
358## Callback<sup>15+</sup>
359
360### (data: T)<sup>15+</sup>
361
362(data: T): V
363
364通用回调函数。
365
366开发者在使用时,可自定义data的参数类型,回调函数返回对应类型的信息。
367
368**原子化服务API:** 从API version 15开始,该接口支持在原子化服务中使用。
369
370**系统能力:** SystemCapability.Window.SessionManager
371
372**参数:**
373
374| 参数名 | 类型 | 必填 | 说明 |
375| ---- | ---- | ---- | -------------------------- |
376| data | T    | 是   | 回调函数调用时需要传入T类型的参数。 |
377
378**返回值:**
379
380| 类型 | 说明 |
381| -------------------------------- | ------------------------------------ |
382| V | 回调函数需要返回V类型的返回值。 |
383
384## RotationChangeInfo<sup>19+</sup>
385
386窗口旋转变化时的窗口信息。
387
388**原子化服务API:** 从API version 19开始,该接口支持在原子化服务中使用。
389
390**系统能力:**  SystemCapability.Window.SessionManager
391
392| 名称   | 类型 | 只读  | 可选 | 说明                    |
393| ------ | ---- | ----- | ---- | ----------------------- |
394| type | [RotationChangeType](arkts-apis-window-e.md#rotationchangetype19) | 否 | 否 | 窗口旋转事件类型。 |
395| orientation | number | 否 | 否 | 窗口显示方向。<br>- 0表示竖屏。<br>- 1表示反向横屏。<br>- 2表示反向竖屏。<br>- 3表示横屏。<br>开发者在使用时,需要注意该方向与display对象的属性orientation含义不一致。 |
396| displayId | number | 否 | 否 | 窗口所在屏幕Id。 |
397| displayRect | [Rect](arkts-apis-window-i.md#rect7) | 否 | 否 | 窗口所在屏幕旋转后的矩形区域大小。 |
398
399## RotationChangeResult<sup>19+</sup>
400
401应用在窗口旋转变化时返回的信息,系统会根据此信息改变当前窗口矩形区域大小。当返回主窗口旋转变化的信息时,系统不改变主窗口的大小。
402应用窗口与系统窗口大小存在限制,具体限制与相关规则可见[resize](arkts-apis-window-Window.md#resize9)。
403
404**原子化服务API:** 从API version 19开始,该接口支持在原子化服务中使用。
405
406**系统能力:**  SystemCapability.Window.SessionManager
407
408| 名称   | 类型 | 只读  | 可选 | 说明                    |
409| ------ | ---- | ----- | ---- | ----------------------- |
410| rectType | [RectType](arkts-apis-window-e.md#recttype19) | 否 | 否 | 窗口矩形区域坐标系类型。 |
411| windowRect | [Rect](arkts-apis-window-i.md#rect7) | 否 | 否 | 相对于屏幕或父窗坐标系的窗口矩形区域信息。|
412
413## RotationChangeCallback<sup>19+</sup>
414
415### (info: T)<sup>19+</sup>
416
417(info: T): U;
418
419旋转事件通知通用回调函数。
420
421开发者在使用时,回调函数参数类型为[RotationChangeInfo](arkts-apis-window-i.md#rotationchangeinfo19),返回值类型为[RotationChangeResult](arkts-apis-window-i.md#rotationchangeresult19)\|void。
422
423**原子化服务API:** 从API version 19开始,该接口支持在原子化服务中使用。
424
425**系统能力:** SystemCapability.Window.SessionManager
426
427**参数:**
428
429| 参数名 | 类型 | 必填 | 说明 |
430| ---- | ---- | ---- | -------------------------- |
431| info | T    | 是   | 回调函数调用时系统传入[RotationChangeInfo](arkts-apis-window-i.md#rotationchangeinfo19)类型的参数。 |
432
433**返回值:**
434
435| 类型 | 说明 |
436| -------------------------------- | ------------------------------------ |
437| U | 回调函数需要返回[RotationChangeResult](arkts-apis-window-i.md#rotationchangeresult19)\|void类型的返回值。 |
438
439## SubWindowOptions<sup>11+</sup>
440
441子窗口创建参数。
442
443**系统能力:** SystemCapability.Window.SessionManager
444
445| 名称      | 类型  | 只读 | 可选 | 说明         |
446| ---------- | ---- | ---- | ---- | ----------- |
447| title<sup>11+</sup>    | string | 否 | 否 | 子窗口标题。标题显示区域最右端不超过系统三键区域最左端,超过部分以省略号表示。 <br>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。      |
448| decorEnabled<sup>11+</sup> | boolean | 否 | 否 | 子窗口是否显示装饰。true表示子窗口显示装饰,false表示子窗口不显示装饰。<br>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。       |
449| isModal<sup>12+</sup>    | boolean | 否 | 是 | 子窗口是否启用模态属性。true表示子窗口启用模态属性,false表示子窗口禁用模态属性。不设置,则默认为false。 <br>**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。      |
450| modalityType<sup>14+</sup>    | [ModalityType](arkts-apis-window-e.md#modalitytype14) | 否 | 是 | 子窗口模态类型,仅当子窗口启用模态属性时生效。WINDOW_MODALITY表示子窗口模态类型为模窗口子窗,APPLICATION_MODALITY表示子窗口模态类型为模应用子窗。不设置,则默认为WINDOW_MODALITY。<br>**原子化服务API:** 从API version 14开始,该接口支持在原子化服务中使用。       |
451| windowRect<sup>18+</sup>    | [Rect](arkts-apis-window-i.md#rect7) | 否 | 是 | 子窗口矩形区域,其中子窗口存在大小限制,具体参考[resize()](arkts-apis-window-Window.md#resize9)方法。不设置且未调用[showWindow()](arkts-apis-window-Window.md#showwindow9)显示前,则默认为{left: 0, top: 0, width: 0, height: 0}。具体参考[设置应用子窗口](../../windowmanager/application-window-stage.md#设置应用子窗口)开发指南。<br>**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。|
452| zLevel<sup>18+</sup>    | number | 否 | 是 | 子窗口层级级别,仅当子窗口未启用模态属性,即未设置isModal时生效。该参数是整数,取值范围为[-10000, 10000],浮点数输入将向下取整。不设置,则默认为0。<br>**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。|
453| maximizeSupported<sup>19+</sup>    | boolean | 否 | 是 | 子窗口是否支持最大化特性。<!--RP6-->此接口仅可在2in1设备下使用。<!--RP6End-->true表示子窗口支持最大化,false表示子窗口不支持最大化。不设置,则默认为false。<br>**原子化服务API:** 从API version 19开始,该接口支持在原子化服务中使用。|
454| outlineEnabled<sup>20+</sup>    | boolean | 否 | 是 | 子窗口是否显示描边。此接口仅可在2in1设备下使用。true表示子窗口显示描边,false表示子窗口不显示描边。不设置,则默认为false。<br>**原子化服务API:** 从API version 20开始,该接口支持在原子化服务中使用。|
455
456## KeyFramePolicy<sup>20+</sup>
457
458关键帧的策略配置。
459
460**系统能力:** SystemCapability.Window.SessionManager
461
462| 名称   | 类型 | 只读  | 可选 | 说明                    |
463| ------ | ---- | ----- | ---- | ----------------------- |
464| enable | boolean | 否 | 否 | 是否开启关键帧。true表示开启,false表示关闭。 |
465| interval | number | 否 | 是 | 设置关键帧布局切换的拖拽时间间隔,单位为毫秒,默认值为1000。取值为正整数,浮点数向下取整。与distance判断为或的关系:满足其一即开始布局切换。 |
466| distance | number | 否 | 是 | 设置关键帧布局切换的拖拽距离间隔,单位为px,默认值为1000。取值为0或正整数,浮点数向下取整。设置为0时,忽略拖拽距离因素。与interval判断为或的关系:满足其一即开始布局切换。|
467| animationDuration | number | 否 | 是 | 设置关键帧布局的动效切换时间,单位为毫秒,默认值为100。取值为0或正整数,浮点数向下取整。 |
468| animationDelay | number | 否 | 是 | 设置关键帧布局切换动效延迟时间,单位为毫秒,默认值为100。取值为0或正整数,浮点数向下取整。 |