Poner y quitar negrita de un EditText
Hola amigos,
Les comento mi problema:
Tengo en un EditText un texto por ejemplo:
Uno Dos Tres Cuatro Cinco.
Seis Siete Ocho Nueve Diez.
Tengo además un botón "Negrita" que tiene 2 particularidades:
Ponerle o quitarle al texto seleccionado Negrita.
Presionando el botón Negrita cuando he seleccionado:
"Uno Dos Tres Cuatro Cinco."
lo deja así:
"Uno Dos Tres Cuatro Cinco."
Sin embargo, cuando selecciono "Dos" y presiono el botón Negrita no me lo deja así:
"Uno Dos Tres Cuatro Cinco."
sino así:
"Uno Dos Tres Cuatro Cinco.".
Hago uso para poner el Bold:
spannable.setSpan(new StyleSpan(Typeface.BOLD), inicioSeleccion, finalSeleccion, 0);
Hago uso para quitar el Bold:
StyleSpan[] ss = spannable.getSpans(inicioSeleccion, finalSeleccion, StyleSpan.class);
for (int i = 0; i < ss.length; i++) {
if (ss[i].getStyle() == android.graphics.Typeface.BOLD) {
spannable.removeSpan(ss[i]);
}
}
donde spannable es:
Spannable spannable = etTexto.getText();
e inicio de selección:
etTexto.getSelectionStart()
y fin de la selección:
etTexto.getSelectionEnd()
Alguna idea de como podría solucionar este tema?
Espero haberme hecho entender.
Buen día y Dios les bendiga!
|