如何在<string>条目</string>中获取红色星号

时间:2011-06-23 15:26:30

标签: android

如何在条目中显示红色星号,以便您可以在文本末尾显示红色星号以指示其必填字段,例如:输入您的姓名*(星号将为红色)。或者,就此而言,文本中的任何地方。

4 个答案:

答案 0 :(得分:36)

您无法通过xml字符串资源执行此操作。这只能通过代码完成。为此,您需要使用SpannableStringBuilderForegroundColorSpan


这是一个小例子:

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);

enter image description here

答案 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>

中的初始化变量