• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ArkUI子系统Changelog
2
3## cl.arkui.1 bindMenu新增指向性菜单样式
4
5**访问级别**
6
7公开接口
8
9**变更原因**
10
11UX规格增强
12
13**变更影响**
14
15该变更为非兼容性变更。
16
17变更前:在bindMenu的MenuOptions中将enableArrow属性设为true时,不展示指向性菜单样式。
18
19变更后:在bindMenu的MenuOptions中将enableArrow属性设为true且菜单的大小和位置足以放置箭头时,会展示指向性菜单样式。
20
21**API Level**
22
23enableArrow、arrowOffset属性的起始支持版本为API version 10。
24
25**变更发生版本**
26
27从OpenHarmony SDK 5.0.0.23开始。
28
29**适配指导**
30
31如果不需要bindMenu展示指向性菜单样式,在bindMenu的MenuOptions中不设置enableArrow属性或将enableArrow属性设置为false;
32如果需要bindMenu展示指向性菜单样式,在bindMenu的MenuOptions中将enableArrow属性设置为true,并根据需要决定是否设置arrowOffset属性值。
33
34## cl.arkui.2 应用可获焦的默认行为变更
35
36**访问级别**
37
38公开接口
39
40**变更原因**
41
42优化默认走焦行为。
43
44**变更影响**
45
46该变更为非兼容性变更。
47
48变更前:有获焦能力但默认不可获焦的组件,需要通过配置属性`.focusable(true)`使得自身可获焦,且走焦时没有默认焦点框,需要配置焦点态样式。
49
50变更后:注册了onClick或者单指单击手势的组件默认可获焦,走焦时无需配置焦点态样式也能显示默认焦点框。
51
52**API Level**
53
54该特性变更起始支持版本为 API 12。
55
56**变更发生版本**
57
58从OpenHarmony SDK 5.0.0.23开始。
59
60**适配指导**
61
62可点击组件不希望参与走焦,需要显示配置`.focusable(false)`;
63
64## cl.arkui.3 Dialog组件弹窗圆角、背景色、背景模糊、宽高限制、响应式/自适应、阴影样式等默认样式变更
65
66**访问级别**
67
68公开接口
69
70**变更原因**
71
72对弹窗视觉风格进行优化,包括圆角、背景色、材质、阴影;对弹窗响应式布局进行优化,在多设备上获得更好的用户体验。
73
74**变更影响**
75
76该变更为非兼容性变更,只影响弹窗的默认样式,自定义样式后以设置为准,自定义设置非法值时,效果等同默认场景。
77
78- 变更前
79  1. 弹窗圆角默认四个角均为24vp
80  2. 弹窗浅色模式默认背景色为0xd9fffff
81  3. 大部分弹窗默认均为背景色为透明(Color.Transparent)和 背景模糊(COMPONENT_ULTRA_THICK)叠加,customDialog和PromptAction中showDialog和openCustomDialog还是使用的默认背景色。
82  4. 弹窗默认宽度为栅格系统控制,最大宽度400vp,当设备为2in1时,弹窗固定大小为400vp不可改变,无法自定义设置宽度。
83  5. 弹窗默认最大高度为(屏幕高度 - 安全区域)* 0.8, 当设备为2in1时,高度最大为全屏 * 0.67 * 0.9。
84  6. 弹窗响应式/自适应场景下,居中样式为避让导航条后的居中;默认场景下弹窗对齐方式是DialogAlignment.Bottom样式,其余设备均为居中样式。
85  7. 所有设备都没有默认的阴影样式。
86
87  <br/>
88- 变更后
89  1. 弹窗圆角默认四个角均为32vp
90  2. 弹窗浅色模式默认背景色为0xfffff
91  3. 所有弹窗默认均为背景色为透明(Color.Transparent)和 背景模糊(COMPONENT_ULTRA_THICK)叠加
92  4. 弹窗默认宽度为所在窗口宽度 - 左右margin,设备上margin为16;当设备为2in1时,左右margin为40。默认最大宽度为400vp,可以随所在窗口大小变化。当自定义设置width接口值时,以自定义设置为准, 弹窗参考宽度为所在窗口的宽度,在此基础上调小或调大;自定义设置非法值时,效果等同默认场景。
93  5. 弹窗默认最小高度为70vp,默认最大高度均为(窗口高度 - 安全区域)* 0.9,无设备差异。当自定义设置Height接口值时,以自定义设置为准,弹窗参考高度为(窗口高度 - 安全区域),在此基础上调小或调大;自定义设置非法值时,效果等同默认场景。
94  6. 弹窗响应式/自适应场景下,居中样式为全屏居中,所有设备都默认弹窗居中。
95  7. 当设备为2in1时,默认场景下获焦阴影值为ShadowStyle.OUTER_FLOATING_MD,失焦为ShadowStyle.OUTER_FLOATING_SM;其余设备没有默认阴影样式。
96
97  如下图所示为变更前后效果对比:
98
99| 变更前 | 变更后 |
100|---------|---------|
101| ![](figures/Dialog_Default_Radius_And_Margin_Before.png)  |  ![](figures/Dialog_Default_Radius_And_Margin_After.png)  |
102| ![](figures/Dialog_Width_Before.png) |  ![](figures/Dialog_Width_After.png) |
103| ![](figures/Dialog_Default_Alignment_Before.png)  | ![](figures/Dialog_Default_Alignment_After.png) |
104| ![](figures/Dialog_Default_Shadow_Before.png)  | ![](figures/Dialog_Default_Shadow_After.png)  |
105
106**API Level**
107
108在API 12进行版本隔离
109
110**变更发生版本**
111
112从OpenHarmony SDK 5.0.0.23 版本开始。
113
114**变更的接口/组件**
115
116Dialog组件。
117
118**适配指导**
119
120默认效果变更:默认效果变更,无需适配,但应注意变更后的默认效果是否符合开发者预期,如不符合则应自定义修改效果控制变量以达到预期。
121
122## cl.arkui.4 拖拽预览图支持透明度效果及应用自定义
123
124**访问级别**
125
126公开接口
127
128**变更原因**
129
130依照UX规范
131
132**变更影响**
133
134该变更为非兼容性变更。
135
136API version 11及以前:可拖拽组件长按浮起预览图后没有透明度。
137
138API version 12及以后:可拖拽组件长按浮起预览图默认为95%透明度,应用可自定义透明度数值。
139
140**API Level**
141
14212
143
144**变更发生版本**
145
146从OpenHarmony SDK 5.0.0.23开始。
147
148**适配指导**
149
150默认样式变更调整,无需适配。
151
152## cl.arkui.5 @Observed/@Track/@ObservedV2新增校验变更
153**访问级别**
154
155公开接口
156
157**变更原因**
158
159深度观察的装饰器存在新旧两个接口,增加编译校验,防止开发者混用,导致运行时功能异常。
160
161**变更影响**
162
163变更前:不校验报错。
164
165变更后:
166如果开发者存在以下场景,不按规范使用,编译会报错。
167
168- 在@ObservedV2修饰的class内使用@Track。
169
170> **说明:**
171>
172> 因为新的@ObservedV2采用了和@Observed不同的实现逻辑,因此不能在@ObservedV2修饰的class内使用@Track。@Track可以和@Observed一起使用,@Trace可以和@ObservedV2一起使用。
173
174- 一个class同时被@Observed和@ObservedV2装饰。
175
176> **说明:**
177>
178> 将Observed和@ObservedV2混合使用,会出现未定义行为,表现为冗余刷新、失去深度观测能力、失去自身属性观测能力、失去属性级更新能力等。因此不能将Observed和@ObservedV2混合使用。
179
180- 装饰子类和父类的@Observed和@ObservedV2不一致。
181
182错误示例如下:
183
184```ts
185// @Track不能使用在@ObservedV2修饰的class内
186@ObservedV2
187class TestObserved {
188  @Track value: string = "hello"
189}
190// 一个class不能同时被@Observed和@ObservedV2装饰
191@Observed
192@ObservedV2
193class TestObserved1 {
194  value: string = "hello"
195}
196// 装饰子类和父类的@Observed和@ObservedV2需要保持一致
197@Observed
198class TestObserved3 {
199  @Track value: string = "hello"
200}
201@ObservedV2
202class TestObserved4 extends TestObserved3 {
203  @Trace value: string = "hello"
204}
205
206@ObservedV2
207class TestObserved5 {
208  @Trace value: string = "hello"
209}
210@Observed
211class TestObserved6 extends TestObserved5 {
212  @Track value: string = "hello"
213}
214```
215
216**起始API Level**
217
218起始支持版本为 API 12。
219
220**变更发生版本**
221
222从OpenHarmony SDK 5.0.0.23开始。
223
224**适配指导**
225
226开发者需要根据错误提示信息,进行适配整改。
227
228## cl.arkui.6 TextInput、TextArea、Search、RichEditor空间文本菜单样式变更
229
230**访问级别**
231
232公开接口
233
234**变更原因**
235
236规格变更
237
238**变更影响**
239
240该变更为兼容性变更。
241API Version 11 以及之前的版本:文本选择菜单,包含分享、搜索、翻译按钮,三个按钮都是灰色,并且有拓展菜单。
242
243API Version 12 变更后:文本选择菜单,不包含分享、搜索、翻译按钮,不出现拓展菜单。
244
245**起始 API Level**
246
247文本菜单是系统能力,无对外接口。
248
249**变更发生版本**
250
251从OpenHarmony SDK 5.0.0.23 版本开始。
252
253**变更的接口/组件**
254
255TextInput、TextArea、Search、RichEditor。
256
257**适配指导**
258
259默认行为变更,无需适配,但应注意变更后的行为是否对整体应用逻辑产生影响。
260
261## cl.arkui.7 ImageSpan、ContainerSpan单独使用在DevEco Studio中报错变更
262
263**访问级别**
264
265公开接口
266
267**变更原因**
268
269规格变更
270
271**变更影响**
272
273该变更为非兼容性变更。
274变更前:Text子组件ImageSpan、ContainerSpan放在其他组件下使用,编译无报错。
275变更后:DevEco Studio中单独使用ImageSpan、ContainerSpan组件,而不是作为Text的子组件被使用,编译报错。
276
277**起始 API Level**
278
27912
280
281**变更发生版本**
282
283从OpenHarmony SDK 5.0.0.23 版本开始。
284
285**变更的接口/组件**
286
287ImageSpan、ContainerSpan。
288
289**适配指导**
290
291默认行为变更,开发者按照报错提示修改。
292
293## cl.arkui.8 Popup组件宽度设置100%场景下避让位置变更
294
295**访问级别**
296
297公开接口
298
299**变更原因**
300
301UX样式变更
302
303**变更影响**
304
305该变更为非兼容性变更。
306
307变更前,Popup宽度大于等于100% - 6vp时,Popup会进行默认避让,且距离窗口左侧有6vp边距。
308
309变更后,Popup宽度大于等于100% - 6vp时,Popup不会进行默认避让,且距离窗口左侧没有6vp边距。
310
311| 变更前 | 变更后 |
312|---------|---------|
313| ![变更前](figures/popup_avoid_old.jpg)  |  ![变更后](figures/popup_avoid_new.jpg)  |
314
315**起始API Level**
316
3177
318
319**变更发生版本**
320
321从OpenHarmony SDK 5.0.0.23 版本开始。
322
323**变更的接口/组件**
324
325Popup组件。
326
327**适配指导**
328
329默认效果变更,应注意变更后的默认效果是否符合开发者预期,如不符合可以使用offset属性自行调整Popup位置,请查阅[Popup控制](../../../application-dev/reference/apis-arkui/arkui-ts/ts-universal-attributes-popup.md)文档。
330
331## cl.arkui.9 DatePickerDialog标题按钮大小及布局变更
332
333**访问级别**
334
335公开接口
336
337**变更原因**
338
339UX规格增强
340
341**变更影响**
342
343该变更为非兼容性变更。
344
345变更前:DatePickerDialog标题按钮大小与文本大小一致,底部操作区距离弹窗边缘24vp。
346
347变更后:DatePickerDialog标题按钮高度为32vp,距离弹窗左右边界为16vp,底部操作区与离弹窗边缘无间距。
348
349如下图所示为变更前后效果对比:
350
351| 变更前 | 变更后 |
352|---------|---------|
353| ![](figures/DatePickerDialogTitle_Before.jpg) | ![](figures/DatePickerDialogTitle_After.jpg) |
354
355**起始API Level**
356
35712
358
359**变更发生版本**
360
361从OpenHarmony SDK 5.0.0.23开始。
362
363**适配指导**
364
365默认行为变更,无需适配,但应注意变更后的行为是否对整体应用逻辑产生影响。
366
367## cl.arkui.10  bindSheet组件修改标题与关闭按钮之间的间距
368
369**访问级别**
370
371公开接口
372
373**变更原因**
374
375为满足应用述求和新的UX规格,标题与关闭按钮的间距调整为8vp。
376
377**变更影响**
378
379该变更为非兼容性变更。
380
381API version 12之前,标题与关闭按钮之间的距离为32vp。
382
383API version 12及以后,标题与关闭按钮之间的距离为8vp。
384
385变更示例图:
386
387![](figures/SheetTitleSpace_compared.png)
388
389**起始API Level**
390
39111
392
393**变更发生版本**
394
395从OpenHarmony SDK 5.0.0.23开始。
396
397**变更的接口/组件**
398
399bindSheet组件
400
401**适配指导**
402
403默认行为变更,无需适配,但应注意变更后的默认效果是否符合开发者预期,如不符合则自定义修改效果控制变量以达到预期。
404
405## c1.arkui.13 bindSheet半模态面板的backgroundColor属性异常值处理逻辑变更
406
407**访问级别**
408
409公开接口
410
411**变更原因**
412
413bindSheet半模态面板的backgroundColor属性设置从正常值更新为异常值时,使用默认值。
414
415**变更影响**
416
417该变更为非兼容性变更。
418
419变更前,当开发者对bindSheet半模态面板的backgroundColor属性设置从正常值更新为异常值时,采用不操作处理。
420
421变更后,当开发者对bindSheet半模态面板的backgroundColor属性设置从正常值更新为异常值时,采用默认颜色处理。
422
423**起始API Level**
424
42511
426
427**变更发生版本**
428
429从OpenHarmony SDK 5.0.0.23 版本开始。
430
431**变更的接口/组件**
432
433bindSheet半模态面板。
434
435**适配指导**
436
437异常值处理逻辑变更,不涉及适配。
438
439默认行为变更,无需适配,但应注意变更后的默认效果是否符合开发者预期,如不符合则自定义修改效果控制变量以达到预期。
440
441## cl.arkui.11 Menu 组件边距 margin 变更
442
443**访问级别**
444
445公开接口
446
447**变更原因**
448
449菜单弹出 UX 默认行为改变
450
451**变更影响**
452
453API12变更之前:菜单带有边距 margin,左右方向为 12vp,上下方向为 24vp。
454
455API12变更之后:如果配置菜单在应用窗口内弹出,左右方向的 margin 为 16vp,上下侧默认规避状态栏与导航条,不额外增加避让距离;如果配置菜单在应用窗口外弹出,左右方向的 margin 为 8vp,上下侧默认规避状态栏与 Dock 区域,不额外增加避让距离。
456
457**起始API Level**
458
4599
460
461**变更发生版本**
462
463从OpenHarmony SDK 5.0.0.23版本开始。
464
465**变更的接口/组件**
466
467Menu 组件
468
469**适配指导**
470
471默认效果变更,无需适配,但应注意变更后的默认效果是否符合开发者预期,如不符合则应自定义修改效果控制变量以达到预期。
472
473## cl.arkui.12  TabContent组件底部页签水平方向排列情景默认字体大小变更
474
475**访问级别**
476
477公开接口
478
479**变更原因**
480
481当前TabContent组件底部页签水平方向排列情景时默认字体大小为10vp,字体偏小,视觉效果较差,变更为12vp,以提升视觉效果。
482
483**变更影响**
484
485该变更为非兼容性变更。
486
487API version 12之前,TabContent组件底部页签水平方向排布情景默认字体大小为10vp。
488
489![TabContent_Before](figures/TabContent_Before.png)
490
491API version 12及以后,TabContent组件底部页签水平方向排布情景默认字体大小为12vp。
492
493![TabContent_After](figures/TabContent_After.png)
494
495**起始API Level**
496
49710
498
499**变更发生版本**
500
501从OpenHarmony SDK 5.0.0.23开始。
502
503**变更的接口/组件**
504
505TabContent组件
506
507**适配指导**
508
509默认行为变更,无需适配,但应注意变更后的默认效果是否符合开发者预期,如不符合可参照[TabContent组件](../../../application-dev/reference/apis-arkui/arkui-ts/ts-container-tabcontent.md)说明文档设置相关属性以达到预期。
510
511## cl.arkui.13 backgroundImage异常参数处理规格变更
512
513**访问级别**
514
515公开接口
516
517**变更原因**
518
519接口异常值处理变更。
520
521**变更影响**
522
523变更前:异常值时不处理。
524
525变更后:异常值时清除背景图,作默认值处理。
526
527**起始API Level**
528
529该特性版本为API 7,变更版本为API 12。
530
531**变更发生版本**
532
533从OpenHarmony SDK 5.0.0.23开始。
534
535**适配指导**
536
537异常值处理逻辑变更,不涉及适配,但应注意变更后的默认效果是否符合开发者预期,如不符合则自定义修改效果控制变量以达到预期。
538
539## cl.arkui.14 backgroundImageSize异常参数处理规格变更
540
541**访问级别**
542
543公开接口
544
545**变更原因**
546
547接口异常值处理变更。
548
549**变更影响**
550
551变更前:异常值时当作宽高为0处理。
552
553变更后:异常值时当作默认值ImageSize.Auto处理。
554
555**起始API Level**
556
557该特性版本为API 7,变更版本为API 12。
558
559**变更发生版本**
560
561从OpenHarmony SDK 5.0.0.23开始。
562
563**适配指导**
564
565异常值处理逻辑变更,不涉及适配,但应注意变更后的默认效果是否符合开发者预期,如不符合则自定义修改效果控制变量以达到预期。
566
567## cl.arkui.15 border中对部分接口新增参数类型
568
569**访问级别**
570
571公开接口
572
573**变更原因**
574
575扩展border成员属性类型,提供镜像能力。
576
577**变更影响**
578
579该变更为不兼容变更。
580
581变更前:borderWidth 参数类型为Length | EdgeWidths;
582
583​                borderColor 参数类型为ResourceColor | EdgeColors;
584
585​                borderRadius 参数类型为 Length | BorderRadiuses;
586
587​                borderOptions同理
588
589变更后:borderWidth 参数类型为Length | EdgeWidths | LocalizedEdgeWidths;
590
591​                borderColor 参数类型为ResourceColor | EdgeColors | LocalizedEdgeColors;
592
593​                borderRadius 参数类型为Length | BorderRadiuses | LocalizedBorderRadiuses;
594
595​                borderOptions同理
596
597**起始API Level**
598
59912
600
601**变更发生版本**
602
603从OpenHarmony SDK 5.0.0.23开始。
604
605**变更的接口/组件**
606
607新增 borderWidth参数LocalizedEdgeWidths,borderColor参数LocalizedEdgeColors,borderRadius参数LocalizedBorderRadiuses以及borderOptions中width、color、radius参数的类型扩充。
608
609**适配指导**
610
611开发者需要根据错误提示信息,进行适配整改。
612
613针对以下场景,会存在类型不兼容报错。
614
615```ts
616const item: BorderOptions = { width: "10px",color: 0x000000,radius: 10 }
617
618const value1 : Length | EdgeWidths = item.width
619
620const value2 : ResourceColor | EdgeColors = item.color
621
622const value3 : Length | BorderRadiuses = item.radius
623```
624
625需要开发者手动修改代码。
626
627```ts
628const item: BorderOptions = { width: "10px",color: 0x000000,radius: 10 }
629
630const value1 : Length | EdgeWidths | LocalizedEdgeWidths | undefined = item.width
631
632const value2 : ResourceColor | EdgeColors | LocalizedEdgeColors | undefined = item.color
633
634const value3 : Length | BorderRadiuses | LocalizedBorderRadiuses | undefined = item.radius
635```
636
637