textsize studio font color change android colors textview

android - studio - TextView setTextColor() no funciona



set color android studio (5)

1. color estándar u prefiere por favor vaya con a continuación.

textview.setTextColor(Color.select_color)

2.aquí desea utilizar el color custwom agréguelo en el archivo color.xml

textview.setTextColor(getResources().getColor(R.color.textbody));

o

textView.setTextColor(Color.parseColor("#000000"));

o

subText.setTextColor(Color.rgb(255,192,0));

Programmáticamente creo una lista (no es un ListView, simplemente agregándolas al padre) de tales elementos:

<LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" android:layout_weight="1"> <TextView android:id="@+id/filiale_name" android:layout_width="fill_parent" android:layout_height="wrap_content"/> <TextView android:id="@+id/lagerstand_text" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="10sp" android:textColor="@color/red"/> </LinearLayout>

Además, he definido algunos colores en values ​​/ colors.xml. Como puede ver, TextView con id "lagerstand_text" ha establecido su color en rojo de forma predeterminada. Eso funciona.

Al crear los elementos en Java, lo hago

lagerstandText.setText("bla");

y para algunos elementos también lo hago

lagerstandText.setTextColor(R.color.red);

y otros colores Mientras que los elementos sobre los que no se llama setTextColor () son rojos, todos los demás son grises, sin importar el color que elija (incluso si es el mismo rojo otra vez).

¿Porqué es eso?


El ID entero para un color particular (definido en el diseño xml) definido en la clase R no se puede pasar como un parámetro al método setTextColor() de la clase View . Debe obtener el parámetro de setTextColor() por la siguiente línea de código:

int para=getResources().getColor(R.color.your_color,null); view.setTextColor(para,null);

El método getColor(int id) se ha depreciado ... en su lugar usa getColor(int id,Resources.Theme theme) como en la línea de código anterior.

The `second parameter( theme )` can be null


Entonces, hay muchas maneras de lograr esta tarea.

1.

int color = Integer.parseInt("bdbdbd", 16)+0xFF000000); textview.setTextColor(color);

2.

textView.setTextColor(getResources().getColor(R.color.some_color));

3.

textView.setTextColor(0xffbdbdbd);

4.

textView.setTextColor(Color.parseColor("#bdbdbd"));

5.

textView.setTextColor(Color.argb(a_int, r_int, g_int, b_int));


La documentación no es muy detallada al respecto, pero no se puede usar solo el entero de R.color cuando se llama a setTextColor . getResources().getColor(R.color.YOURCOLOR) llamar a getResources().getColor(R.color.YOURCOLOR) para establecer un color correctamente.

Use lo siguiente para establecer el color de su texto mediante programación:

textView.setTextColor(getResources().getColor(R.color.YOURCOLOR));

Comenzando con la biblioteca de soporte 23, debe usar el siguiente código, porque getColor está en desuso:

textView.setTextColor(ContextCompat.getColor(context, R.color.YOURCOLOR));


Para referencia futura, puede usar lo siguiente:

String color = getString(Integer.parseInt(String.valueOf(R.color.my_color))); my_textView.setTextColor(Color.parseColor(color));

De esta manera puede hacer uso de sus recursos de color.