将Rich Edit文本保存到数据库

时间:2015-11-06 22:02:33

标签: android database richtext

我有一个编辑文本框(noteContent)。用户可以使用多种格式,以下是一些:

                    if (text.equals("Bold")) {

                        //Make Spannable Text Bold//
                        spannable.setSpan(new StyleSpan(Typeface.BOLD), startSelection, endSelection, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
                    }



                    if (text.equals("Italic")) {

                        //Make Spannable Text Italic//
                        spannable.setSpan(new StyleSpan(Typeface.ITALIC), startSelection, endSelection, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);



                    if (text.equals("Underline")) {

                        //Make Spannable Text Italic//
                        spannable.setSpan(new UnderlineSpan(), startSelection, endSelection, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
                    }

当我保存noteContent.getText.toString()到我的数据库,然后填充我的listview所有富文本都消失了。

如何将editText中的富文本保存到我的数据库中。因此,当我使用simpleCursorAdapter在listView中填充数据库时,富文本就在那里。

感谢。

1 个答案:

答案 0 :(得分:1)

您需要将Spanned getText() EditText转换为可以保存在数据库中的内容,例如HTML表示。然后,您可以将其转换回Spanned,以便稍后在TextView中显示。

一种选择是使用Android SDK中的Html.toHtml()Html.fromHtml()。另一种选择是使用my CWAC-RichEdit library中的SpannedXhtmlGeneratorSpannableStringGenerator。或者,欢迎您提出自己的转换系统,将这些实现作为创意来源。