我有一个编辑文本框 (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 中填充数据库时,富文本就在那里。
谢谢。
最佳答案
您需要将 EditText
上的 getText()
返回的 Spanned
转换为可以保存在数据库中的内容,例如HTML 表示。然后,您可以将其转换回 Spanned
,稍后在 TextView
中显示。
一种选择是使用 Android SDK 中的 Html.toHtml()
和 Html.fromHtml()
。另一种选择是使用来自 my CWAC-RichEdit library 的 SpannedXhtmlGenerator
和 SpannableStringGenerator
.或者,欢迎您提出自己的转换系统,使用这些实现作为想法的来源。
关于android - 将富编辑文本保存到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33576433/