일부 SQLite 데이터베이스에 b 및 sub 태그와 같은 기본 HTML이 포함되어 있습니다. SimpleCursorAdapter를 사용하여 ListView에 테이블을 바인딩했습니다. HTML 태그를 올바르게 표시 할 수 있도록 ListView 형식을 지정하는 방법이 있습니까? SpannedString을 전달하기 위해 Cursor를 얻는 것이 앞으로의 방법처럼 보이지만 그렇게 할 수는 없습니다.Android : 데이터베이스에서로드 할 때 ListView에 HTML 형식의 텍스트 표시
2
A
답변
1
데이터에 간단한 HTML 태그 만 포함되어 있으면 실제로 Html.fromHtml (yourString)을 사용하여 TextView에서 처리 할 수 있습니다. 이 정적 메서드는 WebView보다 훨씬 적은 오버 헤드로 TextView에서 표시 할 수있는 Spanned를 반환합니다.
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);
}
}
3
감사 이안이 내 마지막 어댑터 코드입니다.
CursorWrapper cw = new CursorWrapper(myCursor) {
public String getString(int columnIndex) {
String withHTML = super.getString(columnIndex);
return Html.fromHtml(withHTML).toString();
}
};
+0
감사합니다. 그 생성자는 이제'SimpleCursorAdapter'에서 더 이상 사용되지 않으므로 서명을'public HtmlCursorAdapter (문맥 컨텍스트, int 배열, 커서 c, String [], int []에서 int flags)'로 변경하고'super' 호출을 super (context, layout, c, from, to, flags); – mjjohnson
1
당신은 CursorWrapper 클래스를 사용할 수 있습니다
관련 문제
- 1. 보고서에 HTML 형식의 텍스트 표시
- 2. 안드로이드 : (html 형식의) 텍스트 표시 속도 향상
- 3. HTML 형식의 문자열 표시
- 4. 컬렉션 대신 ListView에 텍스트 표시
- 5. html 형식의 문자열 표시
- 6. AppDomainSetup.ConfigurationFile을 데이터베이스에서로드 할 수 있습니까?
- 7. html 형식의 텍스트 및 캔버스
- 8. 데이터베이스에 html 형식의 텍스트 저장
- 9. Android listview에 등급 표시 줄을 표시하려면 어떻게해야합니까?
- 10. 데이터베이스에 HTML 형식의 텍스트 저장
- 11. Android : 텍스트 표시 문제
- 12. listview에 대한 문제 android
- 13. 사용자가 링크를 클릭 할 때 텍스트 표시
- 14. ListView에 전체 목록 항목 표시
- 15. 텍스트 뷰에 Html 콘텐츠 표시
- 16. DataGrid - Silverlight에 html 텍스트 표시
- 17. 텍스트 상자가 listView에 표시되지 않습니다.
- 18. TextView로 동적으로 텍스트 표시 (Android)
- 19. HTML 텍스트 상자, 자동 강조 표시 텍스트
- 20. 안드로이드 : 텍스트 뷰 헤더 문제와 ListView에
- 21. Android에서 HTML 형식의 이메일 보내기
- 22. Listview에 제목 표시 줄을 추가 할 수 없습니다.
- 23. RTL 형식의 HTML 태그
- 24. 텍스트가 표시 될 때 텍스트 표시 mousefocus
- 25. WPF - 바운드 데이터를 ListView에 표시 할 수 없습니다.
- 26. html 형식의 이메일 보내기
- 27. 장고 'urlize'문자열 형식의 텍스트
- 28. Google Apps Script에서 HTML 형식의 메시지 상자를 표시 하시겠습니까?
- 29. HTML 형식의 프레임입니까? 사실
- 30. 앵커를 표시 할 Android TextView
죄송하지만이 코드를 어디에 넣을 수 있는지 잘 모르겠습니다. TextView를 확장하려고했지만 setText 메서드가 final로 설정되었습니다. – Kieran
TextView를 확장 할 필요가 없습니다. Cursor의 String이 아닌 Html.fromHtml()이 반환 한 Spanned 만 전달하면됩니다. SimpleCursorAdapter를 확장하고 setViewText 메서드를 재정의 할 수 있습니다. –