La selezione blu che vedete è parte dell'ambiente Android standard quando si seleziona il testo. In modo che dovrebbe funzionare sulla tua webview standard senza bisogno di alcun codice personalizzato. => Non sono più convinto che sia vero. Sembra che non lo sia.
La selezione verde (gialla, arancione, rossa, ...) è tuttavia personalizzata.
Si potrebbe leggere il testo selezionato dal vostro evento di selezione e utilizzare tali informazioni per aggiornare il contenuto HTML, avvolgere il testo in un arco con un set di colori di sfondo.
L'approccio alternativo utilizza javascript e abilita javascript nella tua webview. Non sono sicuro, tuttavia, su come farlo.
Alcune fonti per verificare la presenza di questo approccio sono https://github.com/btate/BTAndroidWebViewSelection e Android: How to select text from WebView, and highlight it onclick
selezione testo da WebView dettagli
Per ottenere la selezione del testo di lavoro su un WebView
è possibile utilizzare il seguente frammento (from this question). Attivalo premendo un pulsante (o un altro evento) dal menu (contesto).
private void emulateShiftHeld(WebView view)
{
try
{
KeyEvent shiftPressEvent = new KeyEvent(0, 0, KeyEvent.ACTION_DOWN,
KeyEvent.KEYCODE_SHIFT_LEFT, 0, 0);
shiftPressEvent.dispatch(view);
Toast.makeText(this, "select_text_now", Toast.LENGTH_SHORT).show();
}
catch (Exception e)
{
Log.e("dd", "Exception in emulateShiftHeld()", e);
}
}
yaa. stavo parlando di questo .. Per sicurezza –
vuoi evidenziare il testo mentre selezioni o quando? – deadfish
durante la selezione. sto usando la visualizzazione Web ora perché il mio contenuto è in formato html. ma non è possibile ottenerlo sulla web view. qualsiasi altra opzione –