HarmonyOS鸿蒙Next中在RichEditor中输入纯文本,为什么getSpan返回的是文本数组?

HarmonyOS鸿蒙Next中在RichEditor中输入纯文本,为什么getSpan返回的是文本数组? 我使用的HarmonyOS NEXT SDK是API 15,发现在RichEditor中输入纯文本,getSpan会返回文本数组,例如 “Hello World!你好,世界!” 之类的纯文本内容,请问为什么会有这种情况,之前的版本没发现呢?

controller: RichEditorController = new RichEditorController();
options: RichEditorOptions = { controller: this.controller }
controller1: RichEditorController = new RichEditorController();
options1: RichEditorOptions = { controller: this.controller1 }

// 创建两个富文本组件
RichEditor(this.options)
  .onReady(() => {
    this.controller.addTextSpan('点击按钮获取此处span信息。', {
      style: {
        fontColor: Color.Black,
        fontSize: 15
      }
    })
  })
  .width(300)
  .height(50)
Text('查看getSpans返回值:').fontSize(10).fontColor(Color.Gray).width(300)
RichEditor(this.options1)
  .width(300)
  .height(50)
Button('getSpans', {
  buttonStyle: ButtonStyleMode.NORMAL
})
  .height(30)
  .fontSize(13)
  .onClick(() => {
    this.controller1.addTextSpan(JSON.stringify(this.controller.getSpans()), {
      style: {
        fontColor: Color.Gray,
        fontSize: 10
      }
    })
  })

更多关于HarmonyOS鸿蒙Next中在RichEditor中输入纯文本,为什么getSpan返回的是文本数组?的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

升级HarmonyNext SDK到API 16 Release,没有复现这个问题,应该是系统已经修复了

更多关于HarmonyOS鸿蒙Next中在RichEditor中输入纯文本,为什么getSpan返回的是文本数组?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,RichEditorgetSpan方法返回文本数组的原因是为了支持富文本编辑功能。getSpan用于获取指定范围内的文本及其样式信息。由于富文本可能包含多种样式(如字体、颜色、超链接等),返回数组可以确保每个文本片段与其对应的样式信息一一对应。这种设计使得开发者能够更灵活地处理和操作富文本内容,提升编辑器的功能性和用户体验。

回到顶部