• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# ArkUI子系统Changelog
2
3## cl.arkui.1 自定义组件struct装饰器校验信息优化
4
5**访问级别**
6
7公开接口
8
9**变更原因**
10
11之前的报错信息存在冗余,不易理解。
12
13**变更影响**
14
15该变更为兼容性变更。
16
17变更前:
18输出一个警告(WARN)和一个错误(ERROR)日志信息。
19```
20WARN: ArkTS:WARN File: xx
21A struct should use decorator '@Component' or '@ComponentV2'.
22ERROR: ArkTS:ERROR File:xx
23'TestComponent()' does not meet UI component syntax.
24```
25
26变更后:
27如果struct没有被(@Entry/@Preview/@ComponentV2/@Component/@CustomDialog/@Reusable)其中一个装饰器装饰,编译报错,只有一个错误(ERROR)日志信息。
28```
29ERROR: ArkTS:ERROR File:xx
30Decorator '@Component', '@ComponentV2', or '@CustomDialog' is missing for struct 'TestComponent'.
31```
32错误示例如下:
33```ts
34struct Child {
35  build() {
36    Column() {
37      Text("hello Child")
38    }
39  }
40}
41
42@Entry
43@Component
44struct Child {
45  build() {
46    Column() {
47      Child()
48    }
49  }
50}
51```
52
53**起始API Level**
54
55不涉及API变更
56
57**变更发生版本**
58
59从OpenHarmony SDK 5.0.0.28开始。
60
61**适配指导**
62
63如果应用代码未发生变化,则不需要适配。
64## cl.arkui.2 增加方法装饰器的校验
65
66**访问级别**
67
68公开接口
69
70**变更原因**
71
72当开发者错误的使用多个方法装饰器装饰在同一个方法上时,会导致运行时异常,需要在编译阶段提前拦截。
73
74**变更影响**
75
76该变更为非兼容性变更。
77
78变更前:
79当不同的方法装饰器装饰在同一个方法时,编译无日志提示信息。
80
81变更后:
82当不同的方法装饰器装饰在同一个方法时,编译输出报错提示信息。
83```
84ERROR: ArkTS:ERROR File:xx
85A function can only be decorated by one of the 'AnimatableExtend, Builder, Extend, Styles and Concurrent'.
86ERROR: ArkTS:ERROR File:xx
87The member property or method can not be decorated by multiple built-in decorators.
88```
89
90错误示例如下:
91```ts
92@Builder
93@Styles
94function testFunc() {
95  Text("hello testFunc")
96}
97
98@Component
99struct TestComponent {
100
101  @Builder
102  @Styles
103  testMethod() {
104    Text("hello testMethod")
105  }
106
107  build() {
108    Column() {
109      Text("hello TestComponent")
110    }
111  }
112}
113```
114
115变更前:
116当相同的内置方法装饰器(@AnimatableExtend/@Builder/@Extend/@Styles/@Concurrent)装饰在同一个方法时,编译无日志提示信息。
117
118变更后:
119当相同的内置方法装饰器(@AnimatableExtend/@Builder/@Extend/@Styles/@Concurrent)装饰在同一个方法时,编译输出警告日志提示信息。
120```
121WARN: ArkTS:WARN File: xx
122Duplicate decorators for function are not allowed.
123```
124
125错误示例如下:
126```ts
127@Builder
128@Builder
129function testFunc() {
130  Text("hello testFunc")
131}
132```
133
134**起始API Level**
135
136不涉及API变更
137
138**变更发生版本**
139
140从OpenHarmony SDK 5.0.0.28开始。
141
142**适配指导**
143
144如果开发者不按规范使用对应范式,则需按日志提示信息进行修改。
145
146## cl.arkui.3 bindPopup在窗口失焦后不消失
147
148**访问级别**
149
150公开接口
151
152**变更原因**
153
154开发者不希望popup所在的窗口失去焦点后,popup会自动消失
155
156**变更影响**
157
158该变更为非兼容性变更。
159
160变更前:
161popup所在窗口失焦时,popup会自动消失。
162
163变更后:
164popup所在窗口失焦时,popup不会自动消失。
165
166
167**起始API Level**
168
169不涉及API变更
170
171**变更发生版本**
172
173从OpenHarmony SDK 5.0.0.28开始。
174
175**适配指导**
176
177气泡的关闭需要用户自行决定。如果出现之前版本某一操作后popup消失,现版本不消失的现象时,用户可以检查现象前后窗口焦点是否发生了变化,如果发生变化,现版本需要用户自行将isShow属性设置为false来关闭popup。
178
179## cl.arkui.4 TextInput/TextArea组件设置宽度为auto时,最小值为16vp
180
181**访问级别**
182
183公开接口
184
185**变更原因**
186
187TextInput/TextArea组件设置宽度为auto并且内容为空时,组件消失。
188
189**变更影响**
190
191该变更为兼容性变更。
192
193变更前:
194TextInput/TextArea组件设置宽度为auto并且内容为空时,组件消失。
195
196变更后:
197TextInput/TextArea组件设置宽度为auto并且内容为空时,组件最小宽度为16vp。
198
199**起始API Level**
200
201不涉及API变更
202
203**变更发生版本**
204
205从OpenHarmony SDK 5.0.0.28开始。
206
207**适配指导**
208
209默认行为变更,无需适配,但应注意变更后的行为是否对整体应用逻辑产生影响。
210
211## cl.arkui.5 TextInput/TextArea组件设置为内联模式时,最小值为16vp
212
213**访问级别**
214
215公开接口
216
217**变更原因**
218
219TextInput/TextArea组件设置为内联模式并且内容为空时,组件消失。
220
221**变更影响**
222
223该变更为兼容性变更。
224
225变更前:
226TextInput/TextArea组件设置为内联模式并且内容为空时,组件消失。
227
228变更后:
229TextInput/TextArea组件设置为内联模式并且内容为空时,组件最小宽度为16vp。
230
231**起始API Level**
232
233不涉及API变更
234
235**变更发生版本**
236
237从OpenHarmony SDK 5.0.0.28开始。
238
239**适配指导**
240
241默认行为变更,无需适配,但应注意变更后的行为是否对整体应用逻辑产生影响。
242
243## cl.arkui.6 TextInput/TextArea组件在2in1设备上通过双击弹出菜单时,点击全选,菜单消失
244
245**访问级别**
246
247公开接口
248
249**变更原因**
250
251TextInput/TextArea组件在2in1上通过双击弹出菜单时,点击全选,此时无需菜单弹出。
252
253**变更影响**
254
255该变更为兼容性变更。
256
257变更前:
258TextInput/TextArea组件在2in1上通过双击弹出菜单时,点击全选,此时菜单弹出。
259
260变更后:
261TextInput/TextArea组件在2in1上通过双击弹出菜单时,点击全选,此时菜单消失。
262
263**起始API Level**
264
265不涉及API变更
266
267**变更发生版本**
268
269从OpenHarmony SDK 5.0.0.28开始。
270
271**适配指导**
272
273默认行为变更,无需适配,但应注意变更后的行为是否对整体应用逻辑产生影响。
274
275## cl.arkui.7 Menu组件默认样式变更
276
277**访问级别**
278
279公开接口
280
281**变更原因**
282
283优化menu组件的视觉体验。
284
285**变更影响**
286
287该变更为非兼容性变更。
288
289**变更前:**
290
291![](figures/Menu_Before.png)
292
293菜单列表的左右padding默认为0
294
295菜单项文本字重默认为regular
296
297菜单组件圆角大小默认为16vp
298
299对于带标题的菜单列表,标题文本大小默认为16fp
300
301对于带标题的菜单列表,标题文本颜色默认为#89000000
302
303对于带标题的菜单列表,标题文本字重默认为normal
304
305**变更后:**
306
307![](figures/Menu_After.png)
308
309菜单列表的左右padding默认为16vp
310
311菜单项文本字重默认为medium
312
313菜单组件圆角大小默认为20vp
314
315对于带标题的菜单列表,标题文本大小默认为18fp
316
317对于带标题的菜单列表,标题文本颜色默认为#FF000000
318
319对于带标题的菜单列表,标题文本字重默认为bold
320
321
322**起始API Level**
323
3249
325
326**变更发生版本**
327
328从OpenHarmony SDK 5.0.0.28开始。
329
330**适配指导**
331
332默认效果变更,无需适配,但应注意变更后的默认效果是否符合开发者预期,如不符合则应自定义修改效果控制变量以达到预期。
333
334## cl.arkui.8 chipGroup不设置items属性的异常处理
335
336**访问级别**
337
338公开接口
339
340**变更原因**
341
342chipGroup组件在使用过程中,对于必填属性items,不设置时DevEco Studio是否抛出异常。
343
344**变更影响**
345
346该变更为非兼容性变更。
347
348变更前:必填属性items,不设置时DevEco Studio不报错。
349
350变更后:必填属性items,不设置时DevEco Studio抛出异常告警。
351
352**起始API Level**
353
35412
355
356**变更发生版本**
357
358从OpenHarmony SDK 5.0.0.28开始。
359
360**适配指导**
361
362使用chipGroup组件时,如果不设置必填属性items,则需按日志提示信息进行修改。
363
364## cl.arkui.9 ListItem横滑跟手比变更
365
366**访问级别**
367
368公开接口
369
370**变更原因**
371
372ListItem横滑动态跟手比计算公式,需要与其他场景(例如:List拖动过界)的公式一致。
373
374**变更影响**
375
376该变更为不兼容变更。
377
378ListItem横滑动态跟手比按新实现后,手指滑动相同距离,组件滑动距离会变大。
379
380**起始API Level**
381
3829
383
384**变更发生版本**
385
386从OpenHarmony SDK 5.0.0.28开始。
387
388**适配指导**
389
390默认效果变更,无需适配。
391
392## cl.arkui.10 DrawableDescriptor显示效果
393
394**访问级别**
395
396公开接口
397
398**变更原因**
399
400对原来非标准288x288图标的裁切行为做统一变更,提高用户体验。
401
402**变更影响**
403
404该变更为不兼容性变更。
405
406对于非288x288尺寸前景图片,当前生成的分层图标按照缩放后裁剪显示,288x288尺寸前景图片保持原规格。
407
408**起始API Level**
409
41010
411
412**变更发生版本**
413
414从OpenHarmony SDK 5.0.0.28开始。
415
416**适配指导**
417
418默认效果变更:默认效果变更,无需适配,但应注意变更后的默认效果是否符合开发者预期,如不符合则应自定义修改效果控制变量以达到预期。
419