usar style studio horizontal create como columns android tablelayout separator

android - style - table layout horizontal



¿Cómo puedo agregar líneas de separación entre mis TableRows que se crean mediante programación? (3)

Tengo un TableLayout que se crea mediante programación en un proyecto de Android. Sigo agregando TableRows siempre que haya más filas recuperadas de la base de datos. Ahora quiero agregar líneas de separación, como un borde, entre las TableRows.

En mi otro TableLayout que creé estáticamente a partir de XML, utilicé una Vista como separador, estilo con un style.xml.

Intenté agregar una vista al tablelayout así:

View v=new View(this); v.setLayoutParams(new LayoutParams( LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); v.setBackgroundResource(R.drawable.rowseparator_shape); tr.addView(mTvDate); tr.addView(mTvResult); tl.addView(tr); tl.addView(v);

Pero solo se agrega una vez después de todas las TableRows recolectadas. ¿Cuál sería una forma inteligente de agregar una Vista para cada tr añadido? ¿O debería usar algo más en conjunto?


Gracias a Madhusuthanan por esto. Pasé un tiempo buscando cómo hacer esto para separar simplemente TextViews con una línea horizontal. Estaba creando mi vista programáticamente (sin usar un diseño de tabla). Aquí está lo que se me ocurrió basado en la respuesta anterior:

View line = new View(this); line.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, 1)); line.setBackgroundColor(Color.rgb(51, 51, 51)); layout.addView(line);

¡Sencillo! ¡Espero que esto ayude a alguien más!


Puede usar Listview que será más fácil y mejor que hacer esto.


View v = new View(this); v.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.FILL_PARENT, 1)); v.setBackgroundColor(Color.rgb(51, 51, 51)); tr.addView(mTvDate); tr.addView(mTvResult); tl.addView(tr); tl.addView(v);

Aquí estoy creando una vista de un píxel de altura con un color de fondo específico. Esto funciona para mi