La risposta di wtsang02 è il modo migliore per farlo, poiché Html.fromHtml ("") è ora deprecato. Qui ho intenzione di migliorarlo un po 'per chiunque abbia problemi a rendere dinamicamente in grassetto la prima parola, non importa quale sia la dimensione della frase.
Per prima cosa creiamo un metodo per ottenere la prima parola:
private String getFirstWord(String input){
for(int i = 0; i < input.length(); i++){
if(input.charAt(i) == ' '){
return input.substring(0, i);
}
}
return input;
}
Ora supponiamo che tu abbia una lunga stringa come questa:
String sentence = "friendsAwesomeName@gmail.com want's to be your friend!"
E vuoi che la tua frase sia come yourAwesomeName@gmail.com vuoi che sia tuo amico! Tutto quello che devi fare è prendere la prima Parola e prenderne la lunghezza per rendere audace la prima Parola, qualcosa del genere:
String myFirstWord = getFirstWord(sentence);
int start = 0; // bold will start at index 0
int end = myFirstWord.length(); // and will finish at whatever the length of your first word
Ora segui i passaggi di wtsang02 , in questo modo:
SpannableStringBuilder fancySentence = new SpannableStringBuilder(sentence);
fancySentence.setSpan(new android.text.style.StyleSpan(Typeface.BOLD), start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setText(fancySentence);
E questo è tutto! Ora dovresti essere in grado di mettere in grassetto una parola con qualsiasi dimensione dalla frase lunga / corta. Spero che possa aiutare qualcuno, felice coding :)