Cómo configurar el color de un TextView en Android?

En el archivo string.xml utilizo la siguiente etiqueta

<color name="mycolor1">#F5DC49</color> 

Si yo uso

  textview1.setTextColor(Color.CYAN); 

Funciona, pero

  textview1.setTextColor(R.color.mycolor1); 

no está trabajando.

¿Cómo puedo utilizar el color definido en el archivo XML?

TextView.setTextColor() toma un int que representa el color (por ejemplo, 0xFFF5DC49) y no el ID de recurso del archivo xml. En una actividad, puedes hacer algo como:

  textView1.setTextColor(getResources().getColor(R.color.mycolor)) 

Fuera de una actividad necesitará un Context eg.

  textView1.setTextColor(context.getResources().getColor(R.color.mycolor)) 
  textView1.setTextColor(Color.parseColor("#F5DC49")); 

Sin recursos

context.getResources().getColor es Deprecated.

Es necesario utilizar ContextCompat.getColor () , que forma parte de la Biblioteca de Soporte V4 (por lo que funcionará para todos los API anteriores).

 ContextCompat.getColor(context, R.color.my_color); 

Necesitará agregar la biblioteca de Soporte V4 añadiendo lo siguiente a la matriz de dependencies dentro de su aplicación build.gradle:

 compile 'com.android.support:support-v4:23.0.1' # or any version above 

Si te interesa el tema, la documentación especifica que el método utilizará el tema del contexto:

A partir de M, el color devuelto se denominará para el tema del Contexto especificado

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.