8

我有一段代码使用 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);

中间有一些指数计算,我没有包括在内,因为它们并不重要。代码工作正常。这是它的一些图像:

非编辑模式下的纵向和横向:

肖像 景观

但是,一旦我开始在横向模式下编辑,图像后面的文本就会出现:

我的名字是问题,大问题

大多数人都知道,奇怪的字符串代表 iPhone 中表情符号的 Unicode。有没有人遇到过这个问题?

编辑:用 测试android:imeOptions="actionDone|flagNoExtractUi",不起作用,单词建议会掩盖我的 EditText。

4

1 回答 1

0

我建议您在显示编辑键盘之前将可扩展字符串中的 HTML 代码转换为纯 UNICODE 字符串。如果支持 UNICODE 中的表情符号,那么它应该在编辑中显示。完成编辑后将其转换回 HTML。

android html解码

于 2013-10-28T15:07:38.110 回答