Odpowiedź wtsang02 jest najlepszym sposobem, aby to zrobić, ponieważ Html.fromHtml („”) jest teraz przestarzałe. Tutaj zamierzam go trochę ulepszyć dla każdego, kto ma problem z dynamicznym pogrubieniem pierwszego słowa, bez względu na wielkość zdania.
Najpierw stwórzmy metodę uzyskania pierwszego słowa:
private String getFirstWord(String input){
for(int i = 0; i < input.length(); i++){
if(input.charAt(i) == ' '){
return input.substring(0, i);
}
}
return input;
}
Powiedzmy teraz, że masz długi ciąg:
String sentence = "friendsAwesomeName@gmail.com want's to be your friend!"
I chcesz, aby twoje zdanie było jak twojaNazwaNazwa@gmail.com chcesz być twoim przyjacielem! Wszystko, co musisz zrobić, to zdobyć pierwsze słowo i uzyskać jego długość, aby pierwsze słowo było odważne, mniej więcej tak:
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
Teraz wystarczy wykonać kroki wtsang02 , takie jak to:
SpannableStringBuilder fancySentence = new SpannableStringBuilder(sentence);
fancySentence.setSpan(new android.text.style.StyleSpan(Typeface.BOLD), start, end, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setText(fancySentence);
I to wszystko! Teraz powinieneś być w stanie pogrubić słowo o dowolnym rozmiarze z długiego / krótkiego zdania. Mam nadzieję, że to komuś pomoże, szczęśliwego kodowania :)