weixin_39578681 2025-05-15 15:19 采纳率: 86.4%
浏览 2
已结题

RichEditor setTypingStyle预置文本样式后,切换深浅色模式,文本颜色未跟随深浅色模式变换

使用如下demo,设置一个正常的输入内容的normalStyle文本颜色,一个按钮设置另外一个atUserStyle颜色添加内容。 当点击按钮插入文本内容后,软键盘输入文本内容,在切换深色模式时,软键盘输入的文本内容不会跟随深浅色模式变化:

@Entry
@Component
struct Index {
  @State message: string = 'Hello World';
  richEditorController: RichEditorController = new RichEditorController()
  normalStyle: RichEditorTextStyle = {
    fontColor: $r('sys.color.font_primary'),
    fontSize: $r('sys.float.Body_L')
  }
  atUserStyle: RichEditorTextStyle = {
    fontColor: $r('sys.color.font_emphasize'),
    fontSize: $r('sys.float.Body_L')
  }

  build() {
    Column() {
      RichEditor({controller: this.richEditorController})
        .onReady(() => {
          this.richEditorController.setTypingStyle(this.normalStyle)
        })
        .width('80%')
        .height('50%')
        .border({
          width: 1,
          color: Color.Black
        })
        .backgroundColor($r('sys.color.ohos_id_color_sub_background'))

      Button('@')
        .onClick(() => {
          this.richEditorController.addTextSpan('@张三', {
            style: this.atUserStyle
          })
        })
    }
    .alignItems(HorizontalAlign.Center)
    .width('100%')
  }
}
  • 写回答

3条回答 默认 最新

  • weixin_39578681 2025-05-15 15:19
    关注

    历史版本确实setTypingStyle后,键盘输入文本颜色未在深浅色切换时跟随的问题。

    新版本已修复,使用最新版本后问题解决。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月23日
  • 已采纳回答 5月15日
  • 创建了问题 5月15日