本文主要是介绍Android富文本编辑器总结(五),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一: EditText文本转HTML
Android中有Html.toHtml()的方法,可以将颜色、加粗等转化为html标签,简化了我们标签的插入算法,但是也存在一些问题。
1. @XXX 和 $123456 的问题
@XXX是作为一个整体,创建了一张Bitmap然后使用ImageSpan插入到文本中的,这样就可以实现光标只能定位在@XXX之前或之后,要删除就整体删除。但是通过Html.toHtml()转化之后,会将这张图片转化为《img》标签,而我们只想转换后生成《a》标签(‘《》’实为’<>’),我的处理是这样的。
首先是在ImageSpan的source属性设置为@XXX,然后通过Html.toHtml()转化后为《img src=’@XXX’》。
第二步使用正则表达式匹配含有@的《img》标签,然后替换。
public String parseAtAndDoller(String htmlStr) {String AT_STRING = "<a href=\"http://www.baidu.com?at=%s\">%s</a>";String DOLLER_STRING = "<a href=\"http://www.baidu.com?doller=%s\">%s</a>";
这篇关于Android富文本编辑器总结(五)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!