我有一段代码,使用SpannableString将一些图像添加到EditText中,如下所示:
SpannableString ss = new SpannableString("Some random String in my application.");
Drawable d = getResources().getDrawable(R.drawable.emoticon_0001);
ImageSpan span = new ImageSpan(d, ImageSpan.ALIGN_BOTTOM);
ss.setSpan(span, startIndex, endIndex, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
我之间有一些指数计算,因为它们并不重要。代码工作正常。以下是它的一些图像:
非编辑模式下的纵向和横向:
但是,一旦我在横向模式下开始编辑,图像背后会显示:
正如大多数人所知,奇怪的String表示iPhone中Emoticon的Unicode。 有没有人遇到过这个问题?
编辑:使用android:imeOptions="actionDone|flagNoExtractUi"
进行测试,无效,字词建议会掩盖我的EditText。
答案 0 :(得分:0)
我建议您在显示编辑键盘之前将spannable字符串中的HTML代码转换为纯UNICODE字符串。如果支持UNICODE中的表情符号,则应在编辑中显示。完成编辑后将其转换回HTML。