Was wäre der richtige Weg, um str1 als Teilstring von str2 zu finden, machen Sie es fett (in Str2, das ist), und zeigen Sie es dann als Textansicht?Android - Finden Sie einen Teilstring und machen Sie es fett
-2
A
Antwort
2
Verwenden str2
als SpannableString
und verwenden setSpan()
Methode zu finden, Teilzeichenfolge str1
und machen es BOLD
.
Siehe documentation.
Try this:
TextView textView = (TextView) findViewById(R.id.textView);
String str1 = "substring";
String str2 = "Find a substring and make it bold";
if (str2.contains(str1)) {
SpannableString spannable = new SpannableString(str2);
spannable.setSpan(new StyleSpan(android.graphics.Typeface.BOLD),
str2.indexOf(str1),
str2.indexOf(str1) + str1.length(),
Spannable.SPAN_INCLUSIVE_INCLUSIVE);
textView.setText(spannable);
} else {
textView.setText(str2);
}
OUTPUT:
Hope this ~
1
String str1 = "hello world, how are you?";
String str2 = "world";
//check if str1 contains str2
if (!str1.contains(str2)) {
return;
}
//find index of str2
int startIndex = str1.indexOf(str2);
int endIndex = startIndex + str2.length();
//create spannable
SpannableString spannable = new SpannableString(str2;
spannable.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), startIndex, endIndex, 0);
//set it to textview
textView.setText(spannable);
1
können Sie Spannable String für das
if(str2.contain(str1){
SpannableStringBuilder sb = new SpannableStringBuilder(str2);
// Span to make text bold
StyleSpan bss = new StyleSpan(android.graphics.Typeface.BOLD);
// make them also bold
sb.setSpan(bss, str2.indexOf(str1), str1.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE);
textView.setText(sb);
}else{
textView.setText(str2);
}
0
Verwendung indexOf verwenden sub1 und Html.fromHtml zu finden Zeichenfolge zu forma
int start = str2.indexOf(str1);
String destStr = str2.substring(start)+"<b>" + str2.substring(start, str1.length()) + "</b> " + str2.substring(start+str1.length());
textview.setText(Html.fromHtml(destStr));
0
Mit Hilfe der Menschen, die hier kommentiert helfen, habe ich eine Funktion, die auch Groß-/Kleinschreibung ignoriert - um textView.set zu verwenden Text (boldifySubstring (str2, str1)); -
public static Spanned boldifySubstring(String string, String substring) {
//Create spannable string
SpannableString spannable = new SpannableString(string);
//Check if substring exists (ignore case)
if (string.toLowerCase().contains(substring.toLowerCase())) {
//Get start + end indexes (ignore case)
int start = string.toLowerCase().indexOf(substring.toLowerCase());
int end = start + substring.length();
//Make relevant parts bold
spannable.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), start, end, Spannable.SPAN_INCLUSIVE_INCLUSIVE);
}
return spannable;
}
Verwandte Themen
- 1. Machen Sie einen String Text Fett in Java Android
- 2. Machen Sie einen Text fett und einige kursiv
- 3. Machen Sie bestimmte Wörter fett in C#
- 4. Android - Machen Sie einen Anruf
- 5. Machen Sie einen Teil einer Zeichenfolge fett, die eine Suchzeichenfolge
- 6. Machen Sie Text zwischen Sternchen fett
- 7. Machen Sie einen Android-Countdown
- 8. VBA: Machen Sie jede 20. Zelle Fett
- 9. Finden Sie einen Teilstring im Textblock, es sei denn, es ist Teil eines anderen Teilstrings
- 10. Müssen Sie den Teilstring des Inhalts finden?
- 11. Vergleichen und ersetzen Sie einen Teilstring beim Ignorieren von Sonderzeichen
- 12. So fügen Sie einen Titel und einen Teilstring hinzu
- 13. Wie Sie fett und kursiv auf einen NSMutableAttributedString-Bereich anwenden?
- 14. Finden Sie ein Wort in einem Text und machen Sie Wörter in einem Text Fett und Farbe: rot
- 15. Einen Teilstring innerhalb eines PHP-Arrays finden?
- 16. Wie machen Sie XML-Strings fett, unterstrichen usw.?
- 17. Entfernen Sie einen Teilstring mit Regex
- 18. So extrahieren Sie einen Teilstring in Perl
- 19. Machen Sie einen Suchfilter
- 20. xlwings: Zelle fett machen
- 21. Machen Sie Text, der zwischen Sternchen fett ist
- 22. Machen Sie einen Rückwärtsfilter
- 23. machen UILabel Text fett
- 24. Finden Teilstring ignoriert angegebene Zeichen
- 25. Finden Sie einen Teilstring in einer Zeichenfolge mit Powershell und Trimmen
- 26. Wie finden und ersetzen Sie einen Teilstring in der Antwort des Samplers für Web-Services?
- 27. Android - Machen Sie einen Teil eines Bildes in Android wiederholbar?
- 28. Machen Sie eine Summe und einen Unterschied
- 29. openpyxl Kopfzeile als fett und Farbe machen
- 30. extrahieren Sie einen numerischen Teilstring und fügen Sie einen Wert hinzu
Verwenden Sie bitte spannable String als Html.fromHtml (String-Zeichenfolge) ist veraltet –