Cómo obtener un asterisco rojo en una entrada <string>
¿Cómo se obtiene un asterisco rojo en una entrada para que pueda mostrarlo al final del texto para indicar su campo obligatorio, como: Escriba su nombre * (el asterisco será rojo). O, para el caso, en cualquier parte del texto.
No puede hacerlo a través de recursos de cadena xml. Esto sólo puede hacerse a través de código. Para ello, debe utilizar SpannableStringBuilder
y SpannableStringBuilder
.
Aquí hay un pequeño ejemplo:
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);
Refiérase a esto para ver ejemplos sobre cómo dar estilo a partes de una vista de texto. Así es como podría hacerlo para un asterisco rojo.
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);
Alternativa para mostrar asterisco en android
txtvw2.setText(Html.fromHtml("<sup>*</sup>"+"enter you name"));