HarmonyOS richtext如何控制宽高

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

richtext目前不支持自适应,建议使用web组件,通过loadData方法加载html文本。

参考demo如下:

//index.ets
import web_webview from '@ohos.web.webview';

@Entry
@Component
struct WebComponent {
  controller: web_webview.WebviewController = new web_webview.WebviewController();
  @State webResult: string = ''
  build() {
    Column() {
      Text(this.webResult).fontSize(20)

      Button('loadData')
        .onClick(() => {
          this.controller.loadData("<!DOCTYPE html><html><style> body { background-color: %23ffff44; }</style><body><p><h1>1111111111</h1><h2>1111111111</h2><h2>1111111111</h2> </p> </body><script type=\"text/javascript\"> function watchWindowSize(){ var h = document.body.clientHeight; return h; } </script></html>",
            'text/html',
            'UTF-8')
        })

      Web({ src: "", controller: this.controller })
        .javaScriptAccess(true)
        .aspectRatio(1.5)
        .onPageEnd(e => {
          this.controller.runJavaScript(
            'watchWindowSize()',
            (error,result)=>{
              this.webResult=result
              let pageHeight=this.controller.getPageHeight()+'';
              pageHeight=this.webResult;
              console.info("webResult="+this.webResult);
              console.info("pageHeight="+pageHeight);
            }
          );
        })
    }
  }
}
分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS 如何获取Webview的
50浏览 • 1回复 待解决
如何测量获取控件
842浏览 • 1回复 待解决
如何获取窗口的信息
2369浏览 • 1回复 待解决
ArkTs如何获取组件的
4651浏览 • 1回复 待解决
HarmonyOS RelativeContainer设置问题
42浏览 • 1回复 待解决
HarmonyOS ArkUI中设置
10浏览 • 1回复 待解决
HarmonyOS RelativeContainer自适应问题
685浏览 • 1回复 待解决
HarmonyOS photoAsset获取图片失败
385浏览 • 1回复 待解决
获取Column最终的
467浏览 • 1回复 待解决
HarmonyOS 如何得到父容器的尺寸
26浏览 • 1回复 待解决
HarmonyOS如何获取指定子组件的
1291浏览 • 1回复 待解决
鸿蒙如何获取Element图片的
7951浏览 • 1回复 待解决
求大佬告知如何获取组件
494浏览 • 1回复 待解决
属性动画如何实现动画效果
2070浏览 • 1回复 待解决
HarmonyOS 获取手机设备
37浏览 • 1回复 待解决
java如何获取屏幕。找不到api?
5593浏览 • 1回复 待解决
HarmonyOS 下刘海的获取不到
87浏览 • 1回复 待解决