HarmonyOS RichEditor 添加图片后光标消失

RichEditor addImageSpan或addBuilderSpan 添加图片 点击图片后光标消失

HarmonyOS
2024-12-20 16:31:28
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

先进行“选中”的操作,再进行文本或者图片的添加。光标是不会自动在添加内容后进行闪烁的。针对这个特殊场景需要用setCaretOffset自行设置光标定位。参考代码:

Button("add image")
.onClick(() => {
this.controller.addImageSpan($r("app.media.app_icon"), {
imageStyle: {
size: ["50px", "50px"],
verticalAlign: ImageSpanAlignment.BOTTOM,
layoutStyle: {
borderRadius: undefined,
margin: undefined
}
}
})
let moveOffset = 0;
// 获取全部内容的长度
this.controller.getSpans({ start: -1, end: -1 }).forEach((item) =>{
moveOffset += (item.offsetInSpan[1] - item.offsetInSpan[0])
})
// 添加图片后进行手动定位光标
this.controller.setCaretOffset(moveOffset)
console.info('moveOffset', moveOffset)
})

如果想要在文本中间插入内容,选中之后必须要单选某个位置,此时会有光标闪烁,光标就会在内容添加完后继续定位。所以文本中间插入图片场景就不需要考虑了。

分享
微博
QQ
微信
回复
2024-12-20 18:53:26
相关问题
RichEditor添加、删除、重载图片
1516浏览 • 1回复 待解决
HarmonyOS RichEditor光标位置异常问题
556浏览 • 1回复 待解决
Text换行无法在后面添加图片
970浏览 • 1回复 待解决
HarmonyOS 页面跳转对话框不消失
543浏览 • 1回复 待解决
弹窗跳转到页面返回弹窗不消失
2064浏览 • 1回复 待解决
如何给按钮添加图片
6051浏览 • 4回复 待解决
TabList可以添加图片么?
8116浏览 • 3回复 待解决
图片如何添加渐变模糊
2211浏览 • 1回复 待解决
HarmonyOS拍照后图片添加水印
289浏览 • 1回复 待解决
HarmonyOS是否支持图片添加水印
610浏览 • 1回复 待解决