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);

間にいくつかの指数計算がありますが、それらは重要ではないため含めませんでした。コードは正常に動作します。ここにいくつかの画像があります:

非編集モードでのポートレートとランドスケープ:

肖像画 風景

ただし、横向きモードで編集を開始すると、画像の後ろにテキストが表示されます。

私の名前は問題、大きな問題です

ほとんどの人が知っているように、奇妙な String は iPhone の絵文字の Unicode を表します。以前にこの問題に遭遇した人はいますか?

編集: でテストされandroid:imeOptions="actionDone|flagNoExtractUi"、機能しません。単語の提案が私の EditText を覆い隠します。

4

1 に答える 1

0

編集キーボードを表示する前に、スパン可能な文字列の HTML コードを純粋な UNICODE 文字列に変換することをお勧めします。UNICODE の絵文字がサポートされている場合は、編集時に表示されるはずです。編集が完了したら、HTML に変換します。

アンドロイド html デコード

于 2013-10-28T15:07:38.110 に答える