Ist es möglich, mehrere Stile für verschiedene Textteile in einer Textansicht festzulegen?
Zum Beispiel setze ich den Text wie folgt:
tv.setText(line1 + "\n" + line2 + "\n" + word1 + "\t" + word2 + "\t" + word3);
Ist es möglich, für jedes Textelement einen anderen Stil zu haben? ZB Zeile1 fett, Wort1 kursiv usw.
Die allgemeinen Aufgaben und die Vorgehensweise des Entwicklerhandbuchs in Android umfassen das Auswählen, Hervorheben oder Stylen von Textteilen :
// Get our EditText object. EditText vw = (EditText)findViewById(R.id.text); // Set the EditText's text. vw.setText("Italic, highlighted, bold."); // If this were just a TextView, we could do: // vw.setText("Italic, highlighted, bold.", TextView.BufferType.SPANNABLE); // to force it to use Spannable storage so styles can be attached. // Or we could specify that in the XML. // Get the EditText's internal text storage Spannable str = vw.getText(); // Create our span sections, and assign a format to each. str.setSpan(new StyleSpan(android.graphics.Typeface.ITALIC), 0, 7, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); str.setSpan(new BackgroundColorSpan(0xFFFFFF00), 8, 19, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); str.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 21, str.length() - 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
Dabei werden jedoch explizite Positionsnummern im Text verwendet. Gibt es einen saubereren Weg, dies zu tun?