如何在edittext的当前光标位置为将来的文本设置斜体字体并将其恢复正常?

问题描述

我想在Edittext上应用文本格式选项。空格键触发后,我可以应用粗体,斜体,删除线,下划线,但是我无法将其恢复为正常字体。我想将此字体应用于当前光标位置,也能够将其恢复为普通字体。

我正在使用Sketchware App。

这是我的代码

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,flag);
}
}

我尝试使用.removeSpan();和.clearSpans();在删除跨度时,我也尝试过Spannable.SPAN_EXCLUSIVE_INCLUSIVE来将其设置为当前光标位置。但是没有人成功。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)