¿Hay alguna manera de establecer un dibujable personalizado (a partir de los recursos) en un tramo, especialmente un ClickSpan, de TextView?Android - Configuración de fondo dibujable personalizado para ClickSpan
Google devuelve muchas respuestas para deshabilitar los resaltados o cambiar los colores, sobrescribiendo updateDrawState() del tramo, pero no veo cómo se puede establecer un dibujable en el fondo.
Veo una posibilidad en DynamicDrawableSpan, pero no puedo hacerlo funcionar junto con ClickableSpan. Este es mi código:
public class MyDynamicDrawableSpan extends DynamicDrawableSpan
{
private Context c;
public MyDynamicDrawableSpan(Context context) {
super();
c = context;
}
@Override
public Drawable getDrawable() {
Resources res = c.getResources();
Drawable d = res.getDrawable(R.drawable.span_background);
return d;
}
}
Y así es como lo uso:
SpannableStringBuilder ssb = new SpannableStringBuilder(text);
MyDynamicDrawableSpan ddSpan = new MyDynamicDrawableSpan(getApplicationContext());
...
ssb.setSpan(ddSpan, start, end, 0);
ssb.setSpan(new ClickableSpan(...
Esto no funciona. Solo ayuda a que el tramo sea invisible. ¿Alguna idea brillante?
¿cómo se ve tu archivo span_background.xml? He intentado algo similar creando una forma dibujable, pero el tramo se muestra como invisible. ¿Esto se debe a que una forma dibujable debe establecerse en el fondo de una vista como un botón? http://stackoverflow.com/questions/6674657/how-change-button-shape-using-xml-or-using-java-code – toobsco42
Estoy haciendo algo similar AQUÍ http://stackoverflow.com/questions/10812316/ contact-bubble-edittext – toobsco42
aquí lo he explicado bien. Puedes ver mi [respuesta] (http://krishnalalstha.wordpress.com/2012/06/07/making-gosmsproevernote-like-edittext/) –