CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: complicazio con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 10 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 34 Thanks ricevuti nell'ultimo mese

Pagina 1 di 2 12 ultimoultimo
Ultima pagina
Visualizzazione dei risultati da 1 a 10 su 13
Discussione:

Domanda facile: testo html in una TextView

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Senior Droid


    Registrato dal
    Dec 2009
    Messaggi
    307

    Ringraziamenti
    15
    Ringraziato 40 volte in 39 Posts
    Predefinito

    Domanda facile: testo html in una TextView

    (Vediamo se scrivendo nel titolo che è facile, se riesco a farmi rispondere da qualcuno... )

    Ho una activity, con dentro una ScrollView e una TextView:



    Il testo che devo settare dentro la TextView contiene tag html (pochi in realtà, praticamente quasi solo <B> e link <A href="">).
    Ho visto che la Linkify converte gli url in link ma continua a stampare i tag, ad esempio:
    <a href="http://www.google.it">Google</a>
    viene stampato come:
    <a href="Google">Google</a>
    che non è esattamente quello che voglio.

    Dopo un po' di ricerche ho trovato invece la Html.fromHtml() che fa al caso mio:

    Interpreta l'html e sistema il testo nella TextView con i vari stili richiesti rendendo pure i link cliccabili in modo corretto, anche se ho dovuto aggiungere quella setMovementMethod() per abilitarne il click (altrimenti non si cliccavano.. boh?)

    La domanda è la seguente:
    è normale che quando scrollo il testo o comunque abbasso un dito sul testo senza cliccare un link, il testo normale si scurisce!??
    Al momento l'activity è senza stili e colori se non quelli della formattazione html (bold e link), quindi sfondo nero e testo bianco (più sul grigio direi...), mentre quando premo solo il testo normale diventa di un grigio molto più scuro! Appena rilascio, ritorna come prima il colore.
    Da che può dipendere?

  2.  
  3. #2
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    My two cents... di pura solidarietà.
    Tendenzialmente quando selezioni una TextView il sistema dovrebbe pescare lo stile selected... Credo che però questo (che è il modo standard di scrivere questo tipo di cose in android) vada in conflitto con l'HTML (che, mi passerai, è un po' più barocco). E' noto che fromHTML non ingoia CSS in nessuna maniera quindi non so quanto sia configurabile la strada che stai seguendo...
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  4. #3
    Senior Droid


    Registrato dal
    Dec 2009
    Messaggi
    307

    Ringraziamenti
    15
    Ringraziato 40 volte in 39 Posts
    Predefinito

    Eh, ma quell'html mi arriva da un sito web, devo visualizzarlo in qualche modo (con i vari link), quali altre alternative ho a parte usare questo sistema?

    So che si potrebbe usare la webview, ma l'ho provata un po' e non mi soddisfaceva per niente oltre che si nota palesemente che c'è il browser standard dietro, e non mi piace come cosa.

  5. #4
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da Orochi Visualizza il messaggio
    Eh, ma quell'html mi arriva da un sito web, devo visualizzarlo in qualche modo (con i vari link), quali altre alternative ho a parte usare questo sistema?

    So che si potrebbe usare la webview, ma l'ho provata un po' e non mi soddisfaceva per niente oltre che si nota palesemente che c'è il browser standard dietro, e non mi piace come cosa.
    In questi casi io sono sempre per far arrivare dal sito un XML e masticarlo tranquillamente nella app.
    Se hai il controllo/responsabilità del server farei così, anche perché mi sembra di capire che non stiamo parlando semplicemente della navigazione di una pagina web via app (visto che dici di non voler usare una webview). Se non hai controllo sul sito c'è sempre il parsing del suo HTML e quindi un percorso simile, che però è oggettivamente un reverse engeneering piuttosto dirty.
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  6. #5
    Senior Droid


    Registrato dal
    Dec 2009
    Messaggi
    307

    Ringraziamenti
    15
    Ringraziato 40 volte in 39 Posts
    Predefinito

    Quote Originariamente inviato da Cymon Visualizza il messaggio
    In questi casi io sono sempre per far arrivare dal sito un XML e masticarlo tranquillamente nella app.
    Se hai il controllo/responsabilità del server farei così, anche perché mi sembra di capire che non stiamo parlando semplicemente della navigazione di una pagina web via app (visto che dici di non voler usare una webview). Se non hai controllo sul sito c'è sempre il parsing del suo HTML e quindi un percorso simile, che però è oggettivamente un reverse engeneering piuttosto dirty.
    No purtroppo è un sito che non controllo io, e quell'html che metto lì è una parte della pagina estratta parsando l'intera pagina.
    Mmmh, mi sa che devo giocare con gli stili sulla TextView...

  7. #6
    Senior Droid L'avatar di Cymon


    Registrato dal
    Jul 2010
    Messaggi
    419

    Ringraziamenti
    7
    Ringraziato 43 volte in 42 Posts
    Predefinito

    Quote Originariamente inviato da Orochi Visualizza il messaggio
    No purtroppo è un sito che non controllo io, e quell'html che metto lì è una parte della pagina estratta parsando l'intera pagina.
    Mmmh, mi sa che devo giocare con gli stili sulla TextView...
    Io parserei anche quel pezzo di HTML. Più che altro perché se ti metti a giocare con gli stili sulla TextView secondo me finisci col "reinventare" la webview...
    La mia katana: Slackware 13.1
    La mia wakizashi: Acer A1 Liquid con Android 2.1 Eclair
    Il mio sito: Follow the rabbit (con la sua App )

  8. #7
    Senior Droid


    Registrato dal
    Dec 2009
    Messaggi
    307

    Ringraziamenti
    15
    Ringraziato 40 volte in 39 Posts
    Predefinito

    Quote Originariamente inviato da Cymon Visualizza il messaggio
    Io parserei anche quel pezzo di HTML. Più che altro perché se ti metti a giocare con gli stili sulla TextView secondo me finisci col "reinventare" la webview...
    No dai , volevo solo vedere se riesco a modificare lo stile del testo quando la view è selezionata

  9. #8
    Senior Droid


    Registrato dal
    Dec 2009
    Messaggi
    307

    Ringraziamenti
    15
    Ringraziato 40 volte in 39 Posts
    Predefinito

    Dopo un po' di tentativi a casaccio ho individuato cosa fa scattare la colorazione diversa, questa riga:

    se la rimuovo, scrollando e cliccando sul testo non cambia colore, solo che senza questo i link pur se inseriti nel testo non sono cliccabili

    Vabbè, cambio leggermente domanda, vediamo se riusciamo ad arrivare ad una soluzione diversa.
    Mi sono reso conto che alcuni di quei link che andrei a piazzare in questa TextView preferirei gestirli con la mia stessa applicazione. Mi spiego meglio, diciamo che ho 2 tipologie di link:

    Quelli esterni vorrei continuare a farli gestire al cell per cavoli suoi aprendo il browser o quel che gli pare, gli altri invece vorrei intercettarli e gestirli con la mia applicazione.
    Considerato che la stringa html la parso io e posso riconoscere i vari tipi di link, quali alternative ho per realizzare una roba del genere?
    Nel senso, come renderizzo sto testo a schermo e gestisco i 2 tipi di link?
    Ultima modifica di Orochi; 26-01-11 alle 22:31

  10. #9
    Androidiano


    Registrato dal
    Dec 2009
    Messaggi
    70

    Ringraziamenti
    12
    Ringraziato 2 volte in 2 Posts
    Predefinito

    La domanda è la seguente: è normale che quando scrollo il testo o comunque abbasso un dito sul testo senza cliccare un link, il testo normale si scurisce!??
    Al momento l'activity è senza stili e colori se non quelli della formattazione html (bold e link), quindi sfondo nero e testo bianco (più sul grigio direi...), mentre quando premo solo il testo normale diventa di un grigio molto più scuro! Appena rilascio, ritorna come prima il colore.
    Da che può dipendere
    ciao Orochi , in questi giorni sto cercando in una textview contenente testo + link (numeri telefonici , siti web , ecc.. ecc.. quando scollo o cmq premo si scurisce , è ho risolto così

    per rendere cliccabili testi come numeri telefonici ecc... non volendo aggiungere altro codice nel .java ho settato nelle proprietà della texview il parametro "auto link" su "all"

    per non far scurire per prima cosa in res values ho creato un nuovo file .xml chiamato "colors.xml"
    e dentro questo ho inserito il seguente codice

    ovviamente se vuoi altri colori basta che aggiungi alle stringhe presenti un altra stringa

    quindi dinuovo nelle proprietà della textview cerca in fondo "text Color e text color hint" cliccaci sopra quindi sui 3 puntini poi su color e sciegli il colore... così sia normalmente che cliccando rimane il colore scielto
    spero di essere stato d'aiuto .
    ps: per quanto rigurada l'ultimo problema , ho dato solo uno sguardo veloce ... prova a vedere questo link (non so se può essere di aiuto Android Linkify e i collegamenti testuali | Android | Simplesoft.it

    ciao

  11. #10
    Senior Droid


    Registrato dal
    Dec 2009
    Messaggi
    307

    Ringraziamenti
    15
    Ringraziato 40 volte in 39 Posts
    Predefinito

    Grazie della risposta, ma avevo già risolto è che mi sono scordato di postare qui la soluzione.
    Per il fatto del cambio del colore è come dici tu, se setto esplicitamente i colori non succede più quel brutto effetto

    Per l'altra cosa non ricordo se ho usato Linkify o altro, stasera che torno a casa magari posto la soluzione che ho trovato.

Pagina 1 di 2 12 ultimoultimo
Ultima pagina

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy