2014-04-22 16 views
7

La mia app deve visualizzare testo personalizzato salvato in un gruppo di file .rtf all'interno di un TextView. Ho cercato in diversi forum e non ho ancora una soluzione chiara. Sembra abbastanza facile, vero? Ho sviluppato alcune app come questa in iOS e non ho avuto problemi a visualizzare il testo .rtf all'interno di un UITextView come stringa attribuita. Ho pensato in Android sarà più facile. Grazie per il tuo tempoCome visualizzare il file .rtf all'interno di TextView?

risposta

11

Sembra abbastanza facile, vero?

Non particolarmente. Diamine, anche Windows in gran parte abbandonato RTF circa dieci anni fa.

Opzione 1: se stavi pianificando di impacchettare l'RTF nell'app stessa (ad esempio, come risorse o risorse raw), elimina l'RTF e utilizza l'HTML nella tua app in primo luogo, utilizzando Html.fromHtml() e a TextView o utilizzare uno WebView.

Opzione 2: trovare un codice Java in grado di convertire RTF in HTML al volo, quindi procedere come nell'opzione n.

Opzione n. 3: Trova codice cross-architecture C/C++ in grado di convertire RTF in HTML al volo, aggiungilo alla tua app tramite NDK, quindi procedi come nell'opzione n.

Opzione 4: arrotolare il proprio parser RTF e un SpannableStringBuilder per creare il Spannable formattato da caricare nel TextView.

+0

Grazie! sembra che la risposta sarà usare html invece di rtf, un'altra domanda ... come faccio a visualizzare html all'interno di una textview? Grazie ancora. –

+0

@VictorPinto: HTML semplice può essere convertito in 'Spanned' tramite' Html.fromHtml() ', e può essere passato a' setText() 'su un' TextView'. La chiave è "semplice": se si tratta di una conversione da RTF a HTML, probabilmente starai nella forma corretta. – CommonsWare

+0

Grazie ho trovato la soluzione perfetta! mai pensato che avessi bisogno di html -_- –