0

次のテキストとスタイルを my に設定しますEditText

SpannableStringBuilder sb = new SpannableStringBuilder();

sb.append("Hello");
sb.setSpan(new StyleSpan(Typeface.BOLD), 0, 5, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
sb.append("World Test");
et.setText(sb);

結果は「Hello World Test」です。これで問題ありません。「d」文字の後 (つまり、 と を区切るスペースの前) にカーソルを置いてWorld文字Testを入力すると、Helloの太字スタイルが自動的に失われます。

何故ですか?それは私を混乱させています。これは、「d」の直後にカーソルを置いWorldて文字を入力した場合にのみ発生します。他のすべてのカーソル位置では、期待どおりに機能します。

それはなぜですか、それを修正する方法は? Helloは太字のままにしておきたいです。

4

1 に答える 1