• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 滚动组件通用接口
2
3滚动组件通用属性和事件目前只支持[List](ts-container-list.md)、[Grid](ts-container-grid.md)、[Scroll](ts-container-scroll.md)和[WaterFlow](ts-container-waterflow.md)组件。
4
5>  **说明:**
6>
7>  本模块从API version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
8
9## 属性
10
11### scrollBar<sup>11+</sup>
12
13scrollBar(barState: BarState): T
14
15设置滚动条状态。
16
17**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
18
19**系统能力:** SystemCapability.ArkUI.ArkUI.Full
20
21**参数:**
22
23| 参数名   | 类型                                      | 必填 | 说明                                   |
24| -------- | ----------------------------------------- | ---- | -------------------------------------- |
25| barState | [BarState](ts-appendix-enums.md#barstate) | 是   | 滚动条状态。<br/>默认值:List、Grid、Scroll组件默认BarState.Auto,WaterFlow组件默认BarState.Off。 |
26
27### scrollBarColor<sup>11+</sup>
28
29scrollBarColor(color: Color | number | string): T
30
31设置滚动条的颜色。
32
33**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
34
35**系统能力:** SystemCapability.ArkUI.ArkUI.Full
36
37**参数:**
38
39| 参数名 | 类型                                                         | 必填 | 说明           |
40| ------ | ------------------------------------------------------------ | ---- | -------------- |
41| color  | string&nbsp;\|&nbsp;number&nbsp;\|&nbsp;[Color](ts-appendix-enums.md#color) | 是   | 滚动条的颜色。<br/>默认值:'\#182431'(40%不透明度)|
42
43### scrollBarWidth<sup>11+</sup>
44
45scrollBarWidth(value: number | string): T
46
47设置滚动条的宽度,不支持百分比设置。宽度设置后,滚动条正常状态和按压状态宽度均为滚动条的宽度值。如果滚动条的宽度超过滚动组件主轴方向的高度,则滚动条的宽度会变为默认值。
48
49**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
50
51**系统能力:** SystemCapability.ArkUI.ArkUI.Full
52
53**参数:**
54
55| 参数名 | 类型                       | 必填 | 说明                                      |
56| ------ | -------------------------- | ---- | ----------------------------------------- |
57| value  | string&nbsp;\|&nbsp;number | 是   | 滚动条的宽度。<br/>默认值:4<br/>单位:vp |
58
59### edgeEffect<sup>11+</sup>
60
61edgeEffect(edgeEffect: EdgeEffect, options?: EdgeEffectOptions): T
62
63设置边缘滑动效果。
64
65**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
66
67**系统能力:** SystemCapability.ArkUI.ArkUI.Full
68
69**参数:**
70
71| 参数名                | 类型                                              | 必填 | 说明                                                         |
72| --------------------- | ------------------------------------------------- | ---- | ------------------------------------------------------------ |
73| edgeEffect            | [EdgeEffect](ts-appendix-enums.md#edgeeffect)     | 是   | 滚动组件的边缘滑动效果,支持弹簧效果和阴影效果。<br/>默认值:Grid、Scroll、WaterFlow组件默认EdgeEffect.None,List组件默认EdgeEffect.Spring。|
74| options | [EdgeEffectOptions](#edgeeffectoptions11对象说明) | 否   | 组件内容大小小于组件自身时,是否开启滑动效果。设置为{ alwaysEnabled: true }会开启滑动效果,{ alwaysEnabled: false }不开启。<br/>默认值:<br/>List、Grid、WaterFlow组件默认{ alwaysEnabled: false },Scroll组件默认{ alwaysEnabled: true }。|
75
76### nestedScroll<sup>11+</sup>
77
78nestedScroll(value: NestedScrollOptions): T
79
80设置向前向后两个方向上的嵌套滚动模式,实现与父组件的滚动联动。
81
82**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
83
84**系统能力:** SystemCapability.ArkUI.ArkUI.Full
85
86**参数:**
87
88| 参数名 | 类型                                                  | 必填 | 说明           |
89| ------ | ----------------------------------------------------- | ---- | -------------- |
90| value  | [NestedScrollOptions](#nestedscrolloptions10对象说明) | 是   | 嵌套滚动选项。|
91
92### enableScrollInteraction<sup>11+</sup>
93
94enableScrollInteraction(value: boolean): T
95
96设置是否支持滚动手势,当设置为false时,无法通过手指或者鼠标滚动,但不影响控制器的滚动接口。
97
98**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
99
100**系统能力:** SystemCapability.ArkUI.ArkUI.Full
101
102**参数:**
103
104| 参数名 | 类型    | 必填 | 说明                                |
105| ------ | ------- | ---- | ----------------------------------- |
106| value  | boolean | 是   | 是否支持滚动手势。<br/>默认值:true |
107
108### friction<sup>11+</sup>
109
110friction(value: number | Resource): T
111
112设置摩擦系数,手动划动滚动区域时生效,只对惯性滚动过程有影响,对惯性滚动过程中的链式效果有间接影响。设置为小于等于0的值时,按默认值处理。
113
114**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
115
116**系统能力:** SystemCapability.ArkUI.ArkUI.Full
117
118**参数:**
119
120| 参数名 | 类型                                                 | 必填 | 说明                                                      |
121| ------ | ---------------------------------------------------- | ---- | --------------------------------------------------------- |
122| value  | number&nbsp;\|&nbsp;[Resource](ts-types.md#resource) | 是   | 摩擦系数。<br/>默认值:非可穿戴设备为0.6,可穿戴设备为0.9。<br/>从API version 11开始,非可穿戴设备默认值为0.7。<br/>从API version 12开始,非可穿戴设备默认值为0.75。 |
123
124### flingSpeedLimit<sup>11+</sup>
125
126flingSpeedLimit(speedLimit: number): T
127
128限制跟手滑动结束后,Fling动效开始时的最大初始速度。设置为小于等于0的值时,按默认值处理。
129
130**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
131
132**系统能力:** SystemCapability.ArkUI.ArkUI.Full
133
134**参数:**
135
136| 参数名     | 类型   | 必填 | 说明                            |
137| ---------- | ------ | ---- | ------------------------------- |
138| speedLimit | number | 是   | Fling动效开始时的最大初始速度。<br/>默认值:9000<br/>单位:vp/s |
139
140### fadingEdge<sup>14+</sup>
141
142fadingEdge(enabled: Optional&lt;boolean&gt;, options?: FadingEdgeOptions): T
143
144设置是否开启边缘渐隐效果及设置边缘渐隐长度。
145
146**原子化服务API:** 从API version 14开始,该接口支持在原子化服务中使用。
147
148**系统能力:** SystemCapability.ArkUI.ArkUI.Full
149
150**参数:**
151
152| 参数名  | 类型                                              | 必填 | 说明                                                         |
153| ------- | ------------------------------------------------- | ---- | ------------------------------------------------------------ |
154| enabled | Optional&lt;boolean&gt;                           | 是   | fadingEdge生效时,会覆盖原组件的.overlay()属性。<br/>fadingEdge生效时,建议不在该组件上设置background相关属性,会影响渐隐的显示效果。<br/>fadingEdge生效时,组件会裁剪到边界,设置组件的clip属性为false不生效。<br/>默认值:false,不开启边缘渐隐效果。 |
155| options | [FadingEdgeOptions](#fadingedgeoptions14对象说明) | 否   | 边缘渐隐参数对象。可以通过该对象定义边缘渐隐效果属性,比如设置渐隐长度。 |
156
157### clipContent<sup>14+</sup>
158
159clipContent(clip: ContentClipMode | RectShape): T
160
161设置滚动容器的内容层裁剪区域。
162
163**原子化服务API:** 从API version 14开始,该接口支持在原子化服务中使用。
164
165**系统能力:** SystemCapability.ArkUI.ArkUI.Full
166
167**参数:**
168
169| 参数名  | 类型                                              | 必填 | 说明                                                         |
170| ------- | ------------------------------------------------- | ---- | ------------------------------------------------------------ |
171| clip | [ContentClipMode](#contentclipmode14枚举说明)&nbsp;\|&nbsp;[RectShape](../js-apis-arkui-shape.md#rectshape)   | 是   | 裁剪只针对滚动容器的内容,即其子节点,背景不受影响。通过RectShape传入自定义矩形区域时仅支持设置宽高和相对于组件左上角的[offset](../js-apis-arkui-shape.md#offset),不支持圆角。<br></div>默认值:Grid、Scroll的默认值为ContentClipMode.BOUNDARY,List、WaterFlow的默认值为ContentClipMode.CONTENT_ONLY。 |
172
173### backToTop<sup>15+</sup>
174
175backToTop(backToTop: boolean)
176
177设置滚动组件是否支持点击状态栏回到顶部。
178
179支持当前页面的滚动组件收到点击状态栏事件后,滚动回到顶部。点击状态栏后,后台应用的滚动组件不受影响,不做回到顶部的动作。本属性不受[enableScrollInteraction](#enablescrollinteraction11)设置的影响。
180
181**原子化服务API:** 从API version 15开始,该接口支持在原子化服务中使用。
182
183**系统能力:** SystemCapability.ArkUI.ArkUI.Full
184
185**参数:**
186
187| 参数名 | 类型    | 必填 | 说明                                           |
188| ------ | ------- | ---- | ---------------------------------------------- |
189| backToTop  | boolean | 是   | 设置滚动组件是否支持点击状态栏回到顶部。<br/>默认值: false |
190
191
192
193## 事件
194
195### onReachStart<sup>11+</sup>
196
197onReachStart(event: () => void): T
198
199滚动组件到达起始位置时触发。
200
201滚动组件初始化时会触发一次,滚动到起始位置时触发一次。边缘效果为弹簧效果时,划动经过起始位置时触发一次,回弹回起始位置时再触发一次。
202
203**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
204
205**系统能力:** SystemCapability.ArkUI.ArkUI.Full
206
207### onReachEnd<sup>11+</sup>
208
209onReachEnd(event: () => void): T
210
211滚动组件到达末尾位置时触发。
212
213滚动组件边缘效果为弹簧效果时,划动经过末尾位置时触发一次,回弹回末尾位置时再触发一次。
214
215**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
216
217**系统能力:** SystemCapability.ArkUI.ArkUI.Full
218
219### onScrollStart<sup>11+</sup>
220
221onScrollStart(event: () => void): T
222
223滚动开始时触发。手指拖动滚动组件或拖动滚动组件的滚动条触发的滚动开始时,会触发该事件。使用[Scroller](ts-container-scroll.md#scroller)滚动控制器触发的带动画的滚动,动画开始时会触发该事件。
224
225触发该事件的条件 :
226
2271、滚动组件开始滚动时触发,支持键鼠操作等其他触发滚动的输入设置。
228
2292、通过滚动控制器API接口调用后开始,带过渡动效。
230
231**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
232
233**系统能力:** SystemCapability.ArkUI.ArkUI.Full
234
235### onScrollStop<sup>11+</sup>
236
237onScrollStop(event: () => void): T
238
239滚动停止时触发。手拖动滚动组件或拖动滚动组件的滚动条触发的滚动,手离开屏幕并且滚动停止时会触发该事件。使用[Scroller](ts-container-scroll.md#scroller)滚动控制器触发的带动画的滚动,动画停止时会触发该事件。
240
241触发该事件的条件 :
242
2431、滚动组件触发滚动后停止,支持键鼠操作等其他触发滚动的输入设置。
244
2452、通过滚动控制器API接口调用后开始,带过渡动效。
246
247**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
248
249**系统能力:** SystemCapability.ArkUI.ArkUI.Full
250
251### onWillScroll<sup>12+</sup>
252
253onWillScroll(handler: Optional&lt;OnWillScrollCallback&gt;): T
254
255滚动事件回调,滚动组件滚动前触发。
256
257回调当前帧将要滚动的偏移量和当前滚动状态和滚动操作来源,其中回调的偏移量为计算得到的将要滚动的偏移量值,并非最终实际滚动偏移。可以通过该回调返回值指定滚动组件将要滚动的偏移。
258
259**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
260
261**系统能力:** SystemCapability.ArkUI.ArkUI.Full
262
263**参数:**
264
265| 参数名 | 类型 | 必填 | 说明 |
266| ------ | ------ | ------ | ------|
267| handler | Optional&lt;[OnWillScrollCallback](#onwillscrollcallback12)&gt; | 是 | 滚动组件滑动前触发的回调。 |
268
269> **说明:**
270>
271> 调用ScrollEdge和不带动画的ScrollToIndex时,不触发onWillScroll。
272
273
274### onDidScroll<sup>12+</sup>
275
276onDidScroll(handler: OnScrollCallback): T
277
278滚动组件滑动时触发,返回当前帧滑动的偏移量和当前滑动状态。
279
280**卡片能力:** 从API version 12开始,该接口支持在ArkTS卡片中使用。
281
282**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
283
284**系统能力:** SystemCapability.ArkUI.ArkUI.Full
285
286**参数:**
287
288| 参数名 | 类型 | 必填 | 说明 |
289| ------ | ------ | ------ | ------|
290| handler | [OnScrollCallback](#onscrollcallback12) | 是 | 滚动组件滑动时触发的回调。 |
291
292### onScroll<sup>(deprecated)</sup>
293
294onScroll(event: (scrollOffset: number, scrollState: ScrollState) => void): T
295
296滚动组件滑动时触发。
297
298从API version11开始使用。
299
300从API version 12开始废弃不再使用,Scroll组件的onScroll事件在布局之前触发,建议使用[onWillScroll](#onwillscroll12)替代;List、Grid和WaterFlow组件的onScroll事件在布局之后触发,建议使用[onDidScroll](#ondidscroll12)替代。
301
302**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
303
304**系统能力:** SystemCapability.ArkUI.ArkUI.Full
305
306**参数:**
307
308| 参数名 | 类型 | 必填 | 说明 |
309| ------ | ------ | ------ | ------|
310| scrollOffset | number | 是 | 每帧滚动的偏移量,滚动组件的内容向上滚动时偏移量为正,向下滚动时偏移量为负。<br/>单位vp。 |
311| scrollState | [ScrollState](ts-container-list.md#scrollstate枚举说明) | 是 | 当前滑动状态。 |
312
313## ItemDragInfo对象说明
314
315**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
316
317**系统能力:** SystemCapability.ArkUI.ArkUI.Full
318
319| 名称         | 类型         |   描述         |
320| ---------- | ---------- | ---------- |
321| x | number |  当前拖拽点的x坐标,单位vp。    |
322| y | number |  当前拖拽点的y坐标,单位vp。    |
323
324## NestedScrollOptions<sup>10+</sup>对象说明
325
326**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
327
328**系统能力:** SystemCapability.ArkUI.ArkUI.Full
329
330| 名称   | 类型  | 必填 | 描述              |
331| ----- | ------ | ------ | ----------------- |
332| scrollForward | [NestedScrollMode](ts-appendix-enums.md#nestedscrollmode10) | 是 | 滚动组件往末尾端滚动时的嵌套滚动选项。 |
333| scrollBackward | [NestedScrollMode](ts-appendix-enums.md#nestedscrollmode10) | 是 | 滚动组件往起始端滚动时的嵌套滚动选项。 |
334
335## EdgeEffectOptions<sup>11+</sup>对象说明
336
337**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
338
339**系统能力:** SystemCapability.ArkUI.ArkUI.Full
340
341| 参数名   | 类型  | 必填 | 描述              |
342| ----- | ------| ------- | ----------------- |
343| alwaysEnabled | boolean | 是 | 组件内容大小小于组件自身时,设置是否开启滑动效果。|
344
345## FadingEdgeOptions<sup>14+</sup>对象说明
346
347**原子化服务API:** 从API version 14开始,该接口支持在原子化服务中使用。
348
349**系统能力:** SystemCapability.ArkUI.ArkUI.Full
350
351| 参数名           | 类型                                                         | 必填 | 描述                                                         |
352| ---------------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
353| fadingEdgeLength | [LengthMetrics](../js-apis-arkui-graphics.md#lengthmetrics12) | 否   | 设置边缘渐隐长度。如果设置小于0的值则取默认值。默认长度为32vp。<br/>如果设置的长度超过容器高度的一半时,渐隐长度取容器高度的一半。 |
354
355## ContentClipMode<sup>14+</sup>枚举说明
356
357表示滚动容器的内容裁剪模式。
358
359**原子化服务API:** 从API version 14开始,该接口支持在原子化服务中使用。
360
361**系统能力:** SystemCapability.ArkUI.ArkUI.Full
362
363下图是组件配置了边距属性后的示意图,可理解每种枚举对应的裁剪区域。
364
365![ContentClipMode示意图](figures/ContentClipMode.png)
366
367| 名称     |  值  | 说明                                       |
368| ------ | ------ | ---------------------------------------- |
369| CONTENT_ONLY   |  0  | 按内容区裁剪,对应图中的绿色区域。 |
370| BOUNDARY |  1  | 按组件区域裁剪,对应图中的整个蓝色区域。 |
371| SAFE_AREA  |  2  | 按组件配置的SafeArea区域裁剪,对应图中的整个黄色区域。 |
372
373## OnWillScrollCallback<sup>12+</sup>
374
375type OnWillScrollCallback = (scrollOffset: number, scrollState: ScrollState, scrollSource: ScrollSource) => void | ScrollResult
376
377滚动组件滑动前触发的回调。
378
379**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
380
381**系统能力:** SystemCapability.ArkUI.ArkUI.Full
382
383**参数:**
384
385| 参数名 | 类型 | 必填 | 说明 |
386| ------ | ------ | ------ | ------|
387| scrollOffset | number | 是 | 每帧滑动的偏移量,滚动组件的内容向上滚动时偏移量为正,向下滚动时偏移量为负。<br/>单位vp。 |
388| scrollState | [ScrollState](ts-container-list.md#scrollstate枚举说明) | 是 | 当前滑动状态。 |
389| scrollSource | [ScrollSource](ts-appendix-enums.md#scrollsource12) | 是 | 当前滑动操作的来源。 |
390
391**返回值:**
392
393| 类型                          | 说明                                  |
394| ----------------------------- | ------------------------------------ |
395| void \| [ScrollResult](#scrollresult12对象说明) |  返回ScrollResult时按照开发者指定的偏移量滑动;不返回时按回调参数scrollOffset滑动。 |
396
397## OnScrollCallback<sup>12+</sup>
398
399type OnScrollCallback = (scrollOffset: number, scrollState: ScrollState) => void
400
401滚动组件滑动时触发的回调。
402
403**卡片能力:** 从API version 12开始,该接口支持在ArkTS卡片中使用。
404
405**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
406
407**系统能力:** SystemCapability.ArkUI.ArkUI.Full
408
409| 参数名 | 类型 | 必填 | 说明 |
410| ------ | ------ | ------ | ------|
411| scrollOffset | number | 是 | 每帧滚动的偏移量,滚动组件的内容向上滚动时偏移量为正,向下滚动时偏移量为负。<br/>单位vp。 |
412| scrollState | [ScrollState](ts-container-list.md#scrollstate枚举说明) | 是 | 当前滑动状态。 |
413
414## ScrollResult<sup>12+</sup>对象说明
415
416**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
417
418**系统能力:** SystemCapability.ArkUI.ArkUI.Full
419
420| 参数名 | 类型 | 必填 | 说明 |
421| ------ | ------ | ------ | ------|
422| offsetRemain | number | 是 | 将要滑动偏移量,单位vp。 |
423
424## ChildrenMainSize<sup>12+</sup>对象说明
425
426维护List组件或ListItemGroup组件的子组件在主轴方向的大小信息,仅支持一对一绑定到List组件或ListItemGroup组件。
427
428**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
429
430### constructor<sup>12+</sup>
431
432constructor(childDefaultSize: number): void
433
434ChildrenMainSize有参构造函数。
435
436**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
437
438**系统能力:** SystemCapability.ArkUI.ArkUI.Full
439
440**参数:**
441
442| 名称   | 类型                            | 必填   | 描述                   |
443| ---- | ----------------------------- | ---- | -------------------- |
444| childDefaultSize | number | 是    | 子组件在主轴方向的默认大小。<br/>单位:vp<br/>**说明:** <br/>必须是有限的非负数值,否则抛出异常。|
445
446
447### childDefaultSize<sup>12+</sup>
448
449set childDefaultSize(value: number): void
450
451修改子组件在主轴方向的默认大小。
452
453**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
454
455**系统能力:** SystemCapability.ArkUI.ArkUI.Full
456
457**参数:**
458
459| 名称   | 类型                            | 必填   | 描述                   |
460| ---- | ----------------------------- | ---- | -------------------- |
461| value | number | 是    | 子组件在主轴方向的默认大小。<br/>单位:vp<br/>**说明:** <br/>必须是有限的非负数值,否则抛出异常。|
462
463**错误码**:
464
465以下错误码详细介绍请参考[通用错误码](../../errorcode-universal.md)。
466
467| 错误码ID | 错误信息 |
468| ------- | -------- |
469| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3. Parameter verification failed.   |
470
471get childDefaultSize(): number
472
473获取子组件在主轴方向的默认大小。
474
475**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
476
477**系统能力:** SystemCapability.ArkUI.ArkUI.Full
478
479**返回值:**
480
481| 类型                                                         | 说明                                                         |
482| ------------------------------------------------------------ | ------------------------------------------------------------ |
483| number | 子组件在主轴方向的默认大小。<br/>单位:vp |
484
485### splice<sup>12+</sup>
486
487splice(start: number, deleteCount?: number, childrenSize?: Array\<number>): void
488
489批量增删改子组件在主轴方向的大小信息。
490
491**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
492
493**系统能力:** SystemCapability.ArkUI.ArkUI.Full
494
495**参数:**
496
497| 名称   | 类型                            | 必填   | 描述                   |
498| ---- | ----------------------------- | ---- | -------------------- |
499| start | number | 是    | 从0开始计算的索引值,表示要开始修改子组件在主轴方向大小信息的位置。<br/>**说明:** <br/>1. 必须是有限的非负数值,否则抛出异常。<br/>2. 非整数会被截断为整数。<br/>3. 超过最大索引值不生效。 |
500| deleteCount | number | 否    | 从start开始删除的大小信息的数量。<br/>**说明:** <br/>1.  必须是有限的非负数值,否则处理为0。<br/>2. 非整数会被截断为整数。<br/>3. start + deleteCount - 1可以超过最大索引值,会删除索引值start开始之后的所有子组件的大小信息。 |
501| childrenSize | Array\<number > | 否    | 要在start位置插入的所有子组件的主轴方向的大小。<br/>Array中各个数值单位:vp <br/>**说明:** <br/>1.数组中数值如果是有限的非负值,则认为是指定的大小,后续不随默认大小的变化而变化。<br/>2. 数组中数值如果不是有限的非负值,会被处理成默认大小,后续会随默认大小的变化而变化。  |
502
503
504**错误码**:
505
506以下错误码详细介绍请参考[通用错误码](../../errorcode-universal.md)。
507
508| 错误码ID | 错误信息 |
509| ------- | -------- |
510| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3. Parameter verification failed.   |
511
512
513> **说明:**
514>
515> - 如果仅使用start参数,表示删除索引值start及之后的子组件的大小信息。
516> - 如果仅使用start和deleteCount参数,表示删除索引值start开始的deleteCount数量的子组件的大小信息。一般在删除子组件时使用。
517> - 如果使用3个参数,表示删除索引值start开始的deleteCount数量的子组件的大小信息,再在start位置插入childrenSize中所有的大小信息。一般在增加子组件或者批量更新子组件主轴方向大小的时候使用,如果仅是增加子组件,deleteCount为0,childrenSize的元素数量和增加子组件的个数应该相等;如果仅是批量更新子组件主轴方向的大小,childrenSize的元素数量应该和deleteCount相等,即为批量更新的数量。
518> - 如果想要通知某个子组件的大小为默认大小,childrenSize中对应的值不应该给一个有限的非负值,而应该给NaN,任意负值等能被处理成默认大小的值。
519
520### update<sup>12+</sup>
521
522update(index: number, childSize: number): void
523
524修改指定索引值对应的子组件的主轴方向的大小信息。
525
526**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
527
528**系统能力:** SystemCapability.ArkUI.ArkUI.Full
529
530**参数:**
531
532| 名称   | 类型                            | 必填   | 描述                   |
533| ---- | ----------------------------- | ---- | -------------------- |
534| index | number | 是    | 从0开始计算的索引值,表示要开始修改子组件在主轴方向大小信息的位置。<br/>**说明:** <br/>1. 必须是有限的非负数值,否则抛出异常。<br/>2. 非整数会被截断为整数。<br/>3. 超过最大索引值不生效。 |
535| childSize | number | 是    | 要更新成的大小。<br/>单位:vp <br/>**说明:** <br/>1.数值如果是有限的非负值,则认为是指定的大小,后续不随默认大小的变化而变化。<br/>2. 数值如果不是有限的非负值,会被处理成默认大小,后续会随默认大小的变化而变化。  |
536
537**错误码**:
538
539以下错误码详细介绍请参考[通用错误码](../../errorcode-universal.md)。
540
541| 错误码ID | 错误信息 |
542| ------- | -------- |
543| 401      | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2.Incorrect parameter types; 3. Parameter verification failed.   |
544