una tablas tabla poner letras las formato fila dinamicas como color celda cambiar android colors tablerow

android - poner - tablas dinamicas html javascript



OnClick cambiar el color de fondo de la tabla (2)

Debe establecer el color de fondo de su fila en una lista de estado dibujable (que maneja selección, presionada, activa, no activa).

http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList

El XML debería verse más o menos así:

<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- Active state --> <item android:state_selected="true" android:state_focused="false" android:state_pressed="false" android:drawable="@android:color/transparent" /> <!-- Inactive state--> <item android:state_selected="false" android:state_focused="false" android:state_pressed="false" android:drawable="@android:color/transparent" /> <!-- Pressed state--> <item android:state_pressed="true" android:drawable="@android:color/yellow" /> <!-- Selected state (using d-pad) --> <item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@android:color/yellow" /> </selector>

Así que estoy tratando de encontrar una manera fácil de cambiar el color de fondo o la fila de una tabla cuando se hace clic. He estado tratando de encontrar una forma de llamar el color de fondo y verificarlo, pero no he encontrado una forma de llamar el color. Esto es lo que tengo ahora.

RowName = (TableRow) findViewById(R.id.RowName); RowName.setBackgroundColor(Color.TRANSPARENT); RowName.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { if (RowName.equals(Color.TRANSPARENT)) RowName.setBackgroundColor(Color.YELLOW); else if (RowName.equals(Color.YELLOW)) RowName.setBackgroundColor(Color.TRANSPARENT); } });

Sé que está mal. Espero que puedas ver lo que estoy tratando de lograr. Si no, lo que quiero hacer es hacer que el inicio de la fila de la tabla sea transparente. Cuando alguien hace clic en la fila de la mesa, quiero que cambie a amarillo. Luego, si vuelven a hacer clic, quiero que vuelva a ser transparente. Gracias.


Así que aquí está lo que terminó funcionando. Asegúrese de nombrar sus TableRows. Antes de mi en crear tengo

private Table Row RowName;

tambien tengo

int estado = 0;

. Luego agrego el código

public void RowName(View view) { switch (state) { case 0: RowName.setBackgroundColor(Color.YELLOW); state = 1; break; case 1: RowName.setBackgroundColor(Color.TRANSPARENT); state = 0; break; } }

Para que funcione, ve a tu xml y en la propiedad OnClick agrega RowName o el nombre del vacío público con el que estás trabajando. Disfrutar.