Przesyłam aplikację internetową na platformę dla systemu Android. Aplikacja będzie składać się z niektórych treści internetowych (dostępnych pod numerem WebView
) i niektórych treści offline. Na ekranie głównym muszę wyświetlać pewną ilość tekstu jako zawartość offline i jestem nieco zdezorientowana, jak to zrobić. Przeszedłem przez dokumentację Androida dotyczącą formatowania tekstu, ale okazało się, że jest to trochę męczące w przypadku, gdy mamy do czynienia z więcej niż kilkoma liniami tekstu. Rozważam więc tworzenie stron HTML i umieszczanie ich w folderze res mojej aplikacji. A następnie ładowanie ich za pomocą WebView
. Czy wskazane jest stosowanie takiego podejścia? czy jest lepsze wyjście?wyświetlanie tekstu w formacie HTML w aplikacji na Androida
Odpowiedz
Cóż za prosty tekst można zawsze na TextView
następujący:
someTextView.setText(Html.fromHtml(htmlAsAString));
Jeśli, jak mówisz, że jest bardziej skomplikowana (z obrazami i/lub css etc.) Polecam umieszczenie w html folder/assets i załaduj go bezpośrednio do pliku WebView
.
Istnieje klasa Html
, która może formatować tekst HTML, ale jest dość ograniczona. można przeczytać dokumentację tutaj: http://developer.android.com/reference/android/text/Html.html
metodę, że będziesz prawdopodobnie najbardziej zainteresowany jest Html.fromHtml(java.lang.String)
. Zwraca obiekt Spanned
, który można następnie użyć do wypełnienia TextView
, po prostu wywołując textView.setText(..)
.
Jeśli okaże się, że nie zapewnia wymaganej obsługi znaczników HTML, które są potrzebne, najprawdopodobniej najprawdopodobniej zostanie użyta WebView
.
Tak, próbowałem 'Html.fromHtml()' ale obsługuje tylko bardzo ograniczoną liczbę znaczników HTML –