我有一个项目的SQLite数据库,其中一些包含基本HTML,如b和子标签。我已经使用SimpleCursorAdapter将表绑定到ListView。有没有办法让ListView格式成为HTML标签,以便正确显示? 看来前进的道路是让Cursor提供SpannedStrings,但我无法解决如何做到这一点。Android:从数据库加载时在ListView中显示HTML格式的文本
2
A
回答
1
如果您的数据仅包含简单的HTML标记,那么它们实际上可以通过使用Html.fromHtml(yourString)由TextView处理。该静态方法返回一个Spanned,它可以通过一个TextView显示,其开销远远小于WebView。
3
感谢伊恩,这是我最后的衔接代码:
private class HtmlCursorAdapter extends SimpleCursorAdapter {
public HtmlCursorAdapter(Context context, int layout, Cursor c, String[] from, int[] to) {
super(context, layout, c, from, to);
}
@Override
public void setViewText (TextView view, String text) {
view.setText(Html.fromHtml(text),BufferType.SPANNABLE);
}
}
1
你可以使用CursorWrapper类。
CursorWrapper cw = new CursorWrapper(myCursor) {
public String getString(int columnIndex) {
String withHTML = super.getString(columnIndex);
return Html.fromHtml(withHTML).toString();
}
};
相关问题
- 1. 如何显示从数据库加载到ListView中的图像在Android中
- 2. 加载时以HTML格式显示数据
- 3. Android在ListView中显示HTML
- 4. 将SQLite数据库中的数据显示在Android的ListView中
- 5. 从html格式加载文本到div
- 6. 在Android应用程序中显示html格式的文本
- 7. 从文本文件中加载VBA中的格式化数据
- 8. 如何从HTML中在Tapestry中显示带格式的文本
- 9. Android ListView未显示数据库结果
- 10. 当ListView为空时Android显示文本
- 11. 从项目文件夹加载html格式的图像以显示在webcontrol中
- 12. 以HTML格式显示非格式文本并添加颜色
- 13. 如何正确显示从数据库中具有HTML格式和文本格式
- 14. 从文本文件加载数据库
- 15. 从数据库显示数据在php中的数据[html]
- 16. android显示数据库中使用listview的数据
- 17. 以HTML格式显示文本文件
- 18. 在listview中显示数据Android代码
- 19. 检索数据库信息并显示在与Android的ListView中
- 20. 从数据库格式化文本
- 21. 显示文本和HTML格式
- 22. CKEditor:文本以html格式显示
- 23. Android:如何在从网上下载时向ListView添加数据
- 24. 需要在HTML webview中显示文本格式的数据,如堆栈溢出
- 25. 从ListView中显示EditText的文本
- 26. android editText在mysql数据库中显示为0的文本?
- 27. 在数据库中显示html文本出现错误
- 28. WebView在加载时显示文本
- 29. 加载sqlite本地数据库时显示活动指标
- 30. 在Android中使用光标加载器显示ListView上的光标数据
对不起,但我不知道我可以把这段代码放在哪里。我试图扩展TextView,但setText方法设置为final。 – Kieran 2011-01-12 03:28:16
您不需要扩展TextView,只需将其传递给Html.fromHtml()返回的Spanned而不是来自Cursor的String。您可以扩展SimpleCursorAdapter并覆盖setViewText方法。 – 2011-01-12 07:28:21