鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之RichText组件

 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之RichText组件

一、操作环境

操作系统:  Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1+

二、RichText组件

鸿蒙(HarmonyOS)富文本组件,解析并显示HTML格式文本。

子组件

无。

接口

RichText(content:string)

参数:

参数名

参数类型

必填

参数描述

content

string

表示HTML格式的字符串。

事件

名称

描述

onStart(callback: () => void)

加载网页时触发。

onComplete(callback: () => void)

网页加载结束时触发。

属性

只支持通用属性中width,height,size,layoutWeight四个属性。由于padding,margin,constraintSize属性使用时与通用属性描述不符,暂不支持。

支持标签

名称

描述

示例

<h1>--<h6>

被用来定义HTML,<h1>定义重要等级最高的标题,<h6>定义重要等级最低的标题。

<h1>这是一个标题</h1><h2>这是h2标题</h2>

<p></p>

定义段落。

<p>这是一个段落</p>

<br/>

插入一个简单的换行符。

<p>这是一个段落<br/>这是换行段落</p>

<font/>

规定文本的字体、字体尺寸、字体颜色。

<font size="3" face="arial" color="red">这是一段红色字体。</font>

<hr/>

定义HTML页面中的主题变化(比如话题的转移),并显示为一条水平线。

<p>这个一个段落</p><hr/><p>这是一个段落</p>

<image></image>

用来定义图片。

<image src="file:///data/storage/el1/bundle/entry/resources/rawfile/icon.png"></image>

<div></div>

常用于组合块级元素,以便通过CSS来对这些元素进行格式化。

<div style='color:#0000FF'><h3>这是一个在div元素中的标题。</h3></div>

<i></i>

定义与文本中其余部分不同的部分,并把这部分文本呈现为斜体文本。

<i>这是一个斜体</i>

<u></u>

定义与常规文本风格不同的文本,像拼写错误的单词或者汉语中的专有名词,应尽量避免使用<u>为文本加下划线,用户会把它混淆为一个超链接。

<p><u>这是带有下划线的段落</u></p>

<style></style>

定义HTML文档的样式信息。

<style>h1{color:red;}p{color:blue;}</style>

style

属性规定元素的行内样式,写在标签内部,在使用的时候需用引号来进行区分,并以; 间隔样式,style='width: 500px;height: 500px;border: 1px soild;margin: 0 auto;'。

<h1 style='color:blue;text-align:center'>这是一个标题</h1><p style='color:green'>这是一个段落。</p>

<script></script>

用于定义客户端脚本,比如JavaScript。

<script>document.write("Hello World!")</script>

示例

代码

// xxx.ets
@Entry
@Component
struct RichTextExample {
  @State data: string = '<h1 style="text-align: center;">h1标题</h1>' +
  '<h1 style="text-align: center;"><i>h1斜体</i></h1>' +
  '<h1 style="text-align: center;"><u>h1下划线</u></h1>' +
  '<h2 style="text-align: center;">h2标题</h2>' +
  '<h3 style="text-align: center;">h3标题</h3>' +
  '<p style="text-align: center;">p常规</p><hr/>' +
  '<div style="width: 500px;height: 500px;border: 1px solid;margin: 0auto;">' +
  '<p style="font-size: 35px;text-align: center;font-weight: bold; color: rgb(24,78,228)">字体大小35px,行高45px</p>' +
  '<p style="background-color: #e5e5e5;line-height: 45px;font-size: 35px;text-indent: 2em;">' +
  '<p>这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字</p>';

  build() {
    Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center,
      justifyContent: FlexAlign.Center }) {
      RichText(this.data)
        .onStart(() => {
          console.info('RichText onStart');
        })
        .onComplete(() => {
          console.info('RichText onComplete');
        })
        .width(500)
        .height(400)
        .backgroundColor(0XBDDB69)
      RichText('layoutWeight(1)')
        .onStart(() => {
          console.info('RichText onStart');
        })
        .onComplete(() => {
          console.info('RichText onComplete');
        })
        .size({ width: '100%', height: 110 })
        .backgroundColor(0X92D6CC)
        .layoutWeight(1)
      RichText('layoutWeight(2)')
        .onStart(() => {
          console.info('RichText onStart');
        })
        .onComplete(() => {
          console.info('RichText onComplete');
        })
        .size({ width: '100%', height: 110 })
        .backgroundColor(0X92C48D)
        .layoutWeight(2)
    }
  }
}

你有时间常去我家看看我在这里谢谢你啦...

我家地址:亚丁号

最后送大家一首诗:

山高路远坑深,
大军纵横驰奔,

谁敢横刀立马?
惟有点赞加关注大军。

  • 24
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Richtext组件是一种富文本组件,适用于Android和iOS平台。它可以用于实现内联或与内联块组合,并支持嵌套的<span>标签,以及样式的继承和覆盖。因此,可以将Richtext视为具有更强大用法的更通用的<text>组件。通过设置Richtext组件的selectable属性,可以实现长按选中文本内容的效果。这样,用户可以将光标放在文本内容上,长按选择并复制文本。 富文本的作用是可以在一个文本中包含不同的颜色、不同的字号、不同的背景颜色的文本。通过使用rich-text属性,可以实现对文本的样式进行更细致的控制,达到更好的呈现效果。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [weex-richtext:适用于AndroidiOS的Weex RichText组件](https://download.csdn.net/download/weixin_42126399/18226837)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [微信小程序常用组件实战](https://blog.csdn.net/chengqiuming/article/details/126747735)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [小程序开发之组件rich-text富文本)](https://blog.csdn.net/JackJia2015/article/details/86300651)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值