如何在条目中显示红色星号,以便您可以在文本末尾显示红色星号以指示其必填字段,例如:输入您的姓名*(星号将为红色)。或者,就此而言,文本中的任何地方。
答案 0 :(得分:36)
您无法通过xml字符串资源执行此操作。这只能通过代码完成。为此,您需要使用SpannableStringBuilder
和ForegroundColorSpan
。
这是一个小例子:
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);
答案 1 :(得分:4)
有关如何设置文本视图部分样式的示例,请参阅this。这是你如何为红色星号做的。
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);
答案 2 :(得分:1)
在Android Textview中显示星号的替代方法
txtvw2.setText(Html.fromHtml("<sup>*</sup>"+"enter you name"));
答案 3 :(得分:0)
strings.xml <string name="date_of_incident">Date of Incident <p><font color="red">*</font></p></string>