Tengo un TextView en el que puedo hacer clic y quiero dar algunos colores. Pero no sé cómo. Estos son los fragmentos de código relevantes de mis dos archivos que estoy trabajando con:¿Cambiar el color de TextView que se puede hacer clic en el foco y hacer clic?
TextView title = new TextView(this);
title.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
title.setTextColor(R.color.textcolor);
title.setText(titleLine);
title.setTypeface(null, Typeface.BOLD);
title.setClickable(true);
title.setId(idLine);
title.setFocusable(true);
title.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
/* Irrelevant code */
}
});
y este es mi archivo textcolor.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:color="#000000"/> <!-- pressed -->
<item android:state_focused="true"
android:color="#000000"/> <!-- focused -->
<item android:color="#000000"/> <!-- default -->
</selector>
Cuando utilizo el color de texto-archivo escribiendo title.setTextColor (R.color.textcolor);, el textcolor simplemente se vuelve gris, independientemente de si lo presiono o menos. Lo cual es extraño ya que he escrito "# 000000" en todos los campos de color.
Pero si elimino el código setTextColor, obtiene el texto View un color gris claro, y cuando lo presiono, se vuelve negro. Pero esos no son los colores que quiero.
Entonces, ¿alguien me puede ayudar con este problema?
Solo para aclarar: Quiero ser capaz de especificar los colores para el texto cuando es normal, está presionado y enfocado.
Para las personas que se refieren esta página a través de la búsqueda, hacer referencia a mi respuesta si usted está buscando para utilizar los colores y no 'ColorStateList'. Mi solución funciona sin escribir ningún código en Java :) –