#java #android #spannable #sketchware
#java #Android #spannable #sketchware
Вопрос:
Я хочу применить параметры текстового формата EditText
. Я могу применять жирный шрифт, курсив, ударение, подчеркивание после нажатия клавиши пробела, но я не могу вернуть его к нормальному шрифту. Я хочу применить этот шрифт к текущей позиции курсора, а также вернуть его к нормальному шрифту.
я использую приложение Sketchware.
вот мой код:
if (editText_is_Italic) {
editText_is_Italic = false; btn_italic.setColorFilter(0xFFFFFFFF, PorterDuff.Mode.MULTIPLY);
StyleSpan Spantxt = new StyleSpan(Typeface.NORMAL);
int start = edittext2.getSelectionStart();
int end = edittext2.getSelectionEnd();
int flag = Spannable.SPAN_INCLUSIVE_INCLUSIVE;
edittext2.getText().setSpan(Spantxt, start, end, flag);
}
else {
if (!editText_is_Italic) {
editText_is_Italic = true;
btn_italic.setColorFilter(0xFFFFC107, PorterDuff.Mode.MULTIPLY);
StyleSpan Spantxt = new StyleSpan(Typeface.ITALIC);
int start = edittext2.getSelectionStart();
int end = edittext2.getSelectionEnd();
int flag = Spannable.SPAN_INCLUSIVE_INCLUSIVE;
edittext2.getText().setSpan(Spantxt, start, end, flag);
}
}
Я пытаюсь использовать .removeSpan();
и .clearSpans();
при удалении span, также я пытаюсь Spannable.SPAN_EXCLUSIVE_INCLUSIVE
установить это в текущей позиции курсора. Но никто не преуспел.