Android图文混排完美解决方案:ExpandEditText详情
程序员文章站
2022-05-09 20:38:39
ExpandEditText
一个支持图文混排的EditText
图文编辑 图文解析
该控件自身是没有滚动效果的,故应该在其外部加一层滚动布局。简单使用
Step 1:添加...
ExpandEditText
一个支持图文混排的EditText
图文编辑 图文解析该控件自身是没有滚动效果的,故应该在其外部加一层滚动布局。简单使用
Step 1:添加项目依赖
在build.gradle文件中添加以下代码
compile 'com.zhuangfei:ExpandEditText:1.0.0'
Step 2:引入ExpandEditText控件
引入该控件后,它就拥有了基础的图文编辑功能。
高级功能
1.基础设置
expandEditText.bind(this)//绑定上下文,点击非编辑区域键盘自动弹起 .setOnExpandImageClickListener(this)//图片点击监听 .setHintText("说些什么吧~");//设置Hint
2.插入文字
//追加控件显示的文本 expandEditText.appendText("追加字符串至末尾"); //设置控件显示的文本 expandEditText.setText("设置文本"); //在索引处插入新文本 expandEditText.createEditEntity(0)
2.插入图片
//在光标位置插入图片,使用path来替换该图片 expandEditText.insertBitmap(bitmap,path); //在末尾追加图片,使用replace来替换该图片,replace通常为图片的路径 expandEditText.appendBitmap(bitmap,replace); //在索引处插入图片 expandEditText.createImageEntity(bitmap, replace,0)
3.视图的删除
//根据实体索引删除视图 expandEditText.removeExpandViewAt(0) //根据实体对象删除视图 expandEditText.removeExpandViewAt(baseEntity)
4.获取文本
//将控件中的所有元素转换为字符串 expandEditText.getText()
5.图文解析
//解析图文 expandEditText.load(text);
6.自定义
- 自定义图片解析格式
提示:需要继承ImageWrapper抽象类,实现从字符串中解析出图片实体的方法
- 自定义图片的样式
提示:需要继承DefaultImageLoader
- 文字样式可以修改
提示:实现OnExpandBuildListener接口即可
题外话
由于自身项目需要,所以做了这么个控件,由于时间紧迫,demo以及文档都很粗糙。
项目虽然还有一些地方不太完善,但是已经能够投入生产了,等近期忙完后将会优化项目以及完善demo。