Android中Textview加载HTML方法——RichText富文本解析器

Posted Android记事苟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android中Textview加载HTML方法——RichText富文本解析器相关的知识,希望对你有一定的参考价值。

android中Textview加载html方法RichText富文本解析器

一、RichText

RichText是一个开源HTML解析有很多对img图片的操作所以很是方便使用。但RichText使用时候也有一些解析不出来,我遇到一些问题所以记录下来。

流式操作
低侵入性
支持Html和Markdown格式文本
支持图片点击和长按事件
链接点击事件和长按事件
支持设置加载中和加载错误时的图片
支持自定义超链接的点击回调
支持修正图片宽高
支持GIF图片
支持Base64编码
自持自定义图片加载器
支持内存和磁盘双缓存

二、使用步骤

1.引入库

在build.gradle里引入:

dependencies 
    compile 'com.zzhoujay.richtext:richtext:3.0.8'
    compile 'com.zzhoujay:html:1.0.1'

2.使用实验

首先在oncreate方法里设置缓存位置:

   //第一次设置缓存位置
   RichText.initCacheDir(this);

那个Textview要加载HTML语句绑定使用。

     TextView textview = (TextView)findViewById(R.id.textview);
     String richtext="这里你要解析的字符串,也可以后端传过来的数据";

     RichText.from(richtext)
             .into(textview);

最后onDestroy方法里清除。

     RichText.recycle();

看一下解析的数据效果,很多操作还是很简单的。

现在来看一下解析中遇到的一些问题。
1.font-style: italic; text-decoration-line: underline;这种定义样式解析不出来。

2.如果是从后端全过来的数据,有些字符串格式改变了前端解析不出,像如下字体颜色解析传过来字符串中间有多空格。


总结

RichText并不是完全解析HTML语句样式,但他可以对图片链接点击等操作还是很好用的,具体使用可以去Git上下载看看大佬们的,如果是简单的一些HTML标签可以直接使用Html.fromHtml,想完全展示web界面一样的效果可以用WebView来代替TextView,比如我上面碰到的一些问题什么空格,table标签,ol序列排列等都能加载。

webview的使用如下链接
WebView加载HTML解析
https://blog.csdn.net/weixin_43638289/article/details/108643223

以上是关于Android中Textview加载HTML方法——RichText富文本解析器的主要内容,如果未能解决你的问题,请参考以下文章

Android TextView加载Html ,捕获a标签点击事件

Android TextView加载html形式文本

Android基础篇 TextView加载字体包

java UrlImage Parser for android TextView加载Html Image标签

android如何实现 textview加载html显示gif格式图片最后又demo

Android—— TextView文字链接4中方法