richeditor-android
richeditor-android copied to clipboard
如何设置编辑器添加图片和删除图片的监听?
解决了吗,同问+1
可以换一种方法实现的,我已经是实现了
@Achenglove 说一说呗
@mcxinyu 我提问这个问题的目的是想处理获取提交数据的全部图片的;处理方法是:在getHtml()这个方法获取最终提交的数据,然后通过正则表达式提取全部的图片,然后上传后台
@Achenglove 哦,我倒是想设置监听,还没做好,可能要做 js 交互才行,有实现思路么? 另外你这个方法上传图片之后还要把图片的地址替换到 html 中呢,我是一边选择图片,一边上传的。至于 html 的操作,在 getHtml() 后可以使用 Jsoup 进行处理,这样还可以设置图片的宽高百分比等。
richEditor.setOnTextChangeListener(new RichEditor.OnTextChangeListener() { @Override public void onTextChange(String text) { List<String> picList = getImgFromHtml(text); } }); 添加输入框变化监听,然后根据正则找出所有的图片list
public static List<String> getImgFromHtml(String htmlStr) {
List<String> list = new ArrayList<>();
String img = "";
Pattern p_image;
Matcher m_image;
// String regEx_img = "<img.src=(.?)[^>]?>"; //图片链接地址
String regEx_img = "<img.src\s=\s(.?)[^>]?>";
p_image = Pattern.compile(regEx_img, Pattern.CASE_INSENSITIVE);
m_image = p_image.matcher(htmlStr);
while (m_image.find()) {
// 得到数据
img = m_image.group();
// 匹配
中的src数据
Matcher m = Pattern.compile("src\s*=\s*"?(.*?)("|>|\s+)").matcher(img);
while (m.find()) {
list.add(m.group(1));
}
}
return list;
}
@Achenglove 哦,我倒是想设置监听,还没做好,可能要做 js 交互才行,有实现思路么? 另外你这个方法上传图片之后还要把图片的地址替换到 html 中呢,我是一边选择图片,一边上传的。至于 html 的操作,在 getHtml() 后可以使用 Jsoup 进行处理,这样还可以设置图片的宽高百分比等。
后面解决了吗?同求。