Ho bisogno di evidenziare e rendere l'URL nel testo cliccabile, in modo dinamico.divisione Android con spazio non funzionante per questo caso. Perché?
Per questo, sto usando il metodo seguito
private SpannableString addClickablePart(String string) {
string = string.replaceAll("\\n"," \n ");
string += " ";
SpannableString ss = new SpannableString(string);
String[] words = string.split(" ");
for (final String word : words) {
if (CommonUtilities.isValidURL(word)) {
int lastIndex = 0;
while(lastIndex != -1){
lastIndex = string.indexOf(word+" ",lastIndex);
if(lastIndex != -1){
ClickableSpan clickableSpan = new ClickableSpan() {
@Override
public void onClick(View textView) {
//use word here to make a decision
isRefreshingNecessary = false;
Intent mIntent = new Intent(ctx, UserWebsiteActivity.class);
mIntent.putExtra("website", word);
startActivity(mIntent);
}
};
ss.setSpan(clickableSpan, lastIndex, lastIndex + word.length(),
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
lastIndex += word.length();
}
}
}
}
return ss;
}
Il suo lavoro per la maggior parte dei casi. Ma, non funziona per tutti i casi come nell'esempio qui sotto.
Le informazioni sui prezzi fornite a voi nei vostri termini del piano e condizioni su queste serie di numeri non sarà più applicabile e sarà sostituita da questa struttura di ricarica. Vedi www.ee.co.uk/ukcalling per ulteriori informazioni.
quanto, per il caso di cui sopra, quando ho diviso l'intera stringa utilizzando
String[] words = string.split(" ");
o
String[] words = string.split("\\s+");
Ho See www.ee.co.uk/ukcalling for
come un'unica parola. Invece, ho bisogno di questi 3 - See
, www.ee.co.uk/ukcalling
e for
come 3 parole diverse, da non raggruppare come una singola parola.
Non riesco a capire cosa c'è di sbagliato nel modo di dividere con lo spazio. Per favore aiutatemi a sapere.
Perché downvoting? Ho menzionato quello che ho provato. Per favore fatemi sapere cosa c'è di sbagliato, in modo che, posso migliorare, invece di downvoting. – NarendraJi
puoi anche assegnarli a 3 diverse visualizzazioni di testo per semplicità –
Ho delle stringhe dinamiche quindi, non posso trattarle in modo statico. Avrò un'unica vista testuale, in cui è necessario evidenziare le parti dell'URL, ovunque esista @VivekMishra – NarendraJi