当前位置:编程学习 > wap >>

用ImageSpan实现输入框种插入图片的问题

关键代码如下:
private Spannable getSpanString() {
String s = mEditText.getText().toString();
SpannableString ss = new SpannableString(s);
Pattern pattern = Pattern.compile("[smiley]");
Matcher m = pattern.matcher(s);
while(m.find()){
ss.setSpan(new ImageSpan(this, R.drawable.ic_launcher), m.start(), m.end(),
SpannableString.SPAN_EXCLUSIVE_EXCLUSIVE);
}
return ss;
}

现在碰到的问题是:输入多行,如果第一行的末尾和第二行的头是图片,这时光标定位到第一行末尾输入文字,发现不会出现刚输入的文字,调试中发现光标会定位到]的前面而不是后面,导致刚输入的内容插入到了]前面,不明白的地方是已经把[smiley]当作一个块来处理了,但是光标为什么会定位到块中呢。
求大侠帮忙呀!!! android edittext imagespan 末尾 --------------------编程问答-------------------- Pattern.compile("[smiley]");
这个中括号不需要转义吗?

要不 你每次将[smiley]替换成图片之后,更新一下cursor的位置试试?例如如果cursor的位置在[smiley]中间,则往后移动一下什么什么的
补充:移动开发 ,  Android
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,