背景颜色跨度未保存在sqlite android中,API小于25

时间:2017-06-30 15:56:52

标签: android html spannable

我想突出显示部分编辑文字: -

mySpannablestring.setSpan((new 
BackgroundColorSpan(color)),0,mySpannablestring.length(),0);

//then set to editext

editext.setText(mySpannablestring);

我使用HTML将它作为String保存到数据库: -

String todatabase = Html.toHtml(editext.getText());

//then saved the String in sqlite.

基本上,代码可以保存基本的富文本操作,如粗体,斜体和下划线,但在高亮显示操作中,它仅在API 25中保存,甚至在API 23中也没有。预期文本会成功突出显示,但不会保存。

1 个答案:

答案 0 :(得分:0)

确定它不会被保存。你试图保存list whitch不是String。如果你真的想保存SpannableString,你需要一些方法来序列化然后反序列化你从Spannable收到的值。请注意,textView.getText()返回getText()而不是String。这个CharSequence基本上可以是任何东西。