Wie bekommt man ein rotes Sternchen in einen Eintrag, so dass man es am Ende des Textes anzeigen kann, um anzuzeigen, dass es sich um ein Pflichtfeld handelt, z. B: Geben Sie Ihren Namen ein * (das Sternchen wird rot). Oder, was das betrifft, an einer beliebigen Stelle im Text.
Antworten
Zu viele Anzeigen?Das geht nicht mit Hilfe von Xml-String-Ressourcen. Dies kann nur über Code erfolgen. Hierfür müssen Sie SpannableStringBuilder
y ForegroundColorSpan
.
Hier ein kleines Beispiel:
TextView text = (TextView)findViewById(R.id.text);
String simple = "Enter your name ";
String colored = "*";
SpannableStringBuilder builder = new SpannableStringBuilder();
builder.append(simple);
int start = builder.length();
builder.append(colored);
int end = builder.length();
builder.setSpan(new ForegroundColorSpan(Color.RED), start, end,
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
text.setText(builder);
Ryan
Punkte
1807
Siehe こん für Beispiele, wie man Teile einer Textansicht gestalten kann. Hier sehen Sie, wie Sie ein rotes Sternchen gestalten können.
EditText editTxt = new EditText(this);
editTxt.setText("Testing asterisk *");
Spannable str = editTxt.getTxt();
int loc = editTxt.getTxt().toString().indexOf("*");
str.setSpan(new ForegroundColorSpan(Color.RED), loc, 1, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
chetan mekha
Punkte
640
jagadishlakkurcom jagadishlakk
Punkte
385