1# ArkUI子系统Changelog 2 3## cl.arkui.1 TextController的SetStyledString接口支持保存设置的属性字符串信息到调用的TextController中 4 5**访问级别** 6 7公开接口 8 9**变更原因** 10 11优化属性字符串与Text组件的绑定时机。 12 13**变更影响** 14 15此变更涉及应用适配。 16 17- 变更前:开发者调用TextController的setStyledString接口设置属性字符串时,如果调用时TextController还未绑定对应的Text,则此次设置无效。 18 19- 变更后:开发者调用TextController的setStyledString接口时,调用的TextController会保存设置的属性字符串。当TextController和Text绑定时,如果TextController中已经存储之前调用setStyledString接口保存的属性字符串,则Text会自动设置保存的属性字符串,显示出对应的属性字符串。 20 21**起始API Level** 22 2312 24 25**变更的接口/组件** 26 27涉及组件:Text组件。 28 29涉及接口:setStyledString(value: StyledString): void 30 31**变更发生版本** 32 33从OpenHarmony SDK 5.1.0.51开始,API version 15及以上生效。 34 35**适配指导** 36 37变更后对setStyledString的接口的调用可以更加灵活,Text能够正确地显示出属性字符串。 38```ts 39@Entry 40@Component 41struct StyledStringExample { 42 controller: TextController = new TextController() 43 44 aboutToAppear(): void { 45 this.controller.setStyledString(new StyledString("123456")) // 变更前,由于此时controller还未和Text绑定,此次设置不生效。变更后,属性字符串可以正确的显示 46 } 47 48 build() { 49 Row() { 50 Column() { 51 Text(undefined, {controller: this.controller}) 52 }.width('100%') 53 }.height('100%') 54 } 55} 56``` 57 58## cl.arkui.2 Image、Text和ListItem组件onDragStart接口默认行为变更 59 60**访问级别** 61 62公开接口 63 64**变更原因** 65 66Image、Text和ListItem组件存在设置onDragStart接口DragItemInfo返回值中的builder属性后,返回值中pixelMap和extraInfo属性不生效的问题。 67 68**变更影响** 69 70此变更涉及应用适配,只涉及Image、Text和ListItem组件。 71 72- 变更前:onDragStart接口设置返回值中的builder属性后,无法解析pixelMap和extraInfo属性。同时设置了builder和pixelMap时,拖拽显示的是builder的预览图。onDrop回调中无法获取extraParams参数的值(对应extraInfo)。 73 74- 变更后:onDragStart接口设置返回值中的builder属性后,能够解析pixelMap和extraInfo属性。同时设置了builder和pixelMap时,拖拽显示的是pixelMap的预览图。onDrop回调中能够获取extraParams参数的值(对应extraInfo)。 75 76**起始API Level** 77 7811 79 80**变更发生版本** 81 82从OpenHarmony SDK 5.1.0.51开始,API 15及以上版本生效。 83 84**变更的接口/组件** 85 86涉及组件:Image、Text和ListItem。 87 88涉及接口: onDragStart(event: (event: DragEvent, extraParams?: string) => CustomBuilder | DragItemInfo) 89 90**适配指导** 91 92onDragStart接口的返回值用于指定拖拽过程中显示的图片(pixelMap,builder)以及拖拽过程中组件携带的额外信息(extraInfo)。变更后,pixelMap属性能够正常解析。由于pixelMap的优先级高于builder,如果同时设置了pixelMap和builder,应移除返回值中的pixelMap属性。同样,若不打算传递extraInfo,也应删除该属性。具体实现代码如下: 93```ts 94@Entry 95@Component 96struct SlideExample { 97 build() { 98 Row() { 99 Image() 100 .onDragStart((event) => { 101 return { 102 builder: () => { this.pixelMapBuilder() }, 103 // 若需要拖拽显示builder,需要移除掉pixelMap属性的赋值。 104 // pixelMap:this.pixelMap, 105 // 若设置了builder并且不需要传递extraInfo,需要移除掉extraInfo属性的赋值。 106 // extraInfo: "test" 107 } 108 }) 109 }.height('100%') 110 } 111} 112```