Un poco tarde, pero tal vez alguien más podría necesitar esto.
Usted puede hacer esto también usando xml-layouts. Como desea un formato "similar a una mesa", le recomiendo que use un GridLayout para sus propósitos.
Aquí puede definir sus TextViews y asignarlas a la fila y columna que desee. Use los parámetros android:layout_column="..."
y android:layout_row="..."
para indicar al TextView en qué columna y fila debería aparecer.
A partir de API11 puede usar el atributo xml llamado android:rotation="..."
para rotar su TextView. El atributo usa un valor flotante que representa el ángulo para rotar su TextView.
El Si está desarrollando para API14 y arriba se puede utilizar el atributo android:layout_rowspan="..."
para generar la rowspan en el GridLayout
Por ejemplo un poco de código:
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- column 0 start -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0"
android:layout_row="0"
android:text="ABC" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0"
android:layout_row="1"
android:layout_rowSpan="3"
android:rotation="-90.0"
android:layout_gravity="center_vertical"
android:text="2011" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0"
android:layout_row="4"
android:text="DEF" />
<!-- column 0 end -->
<!-- column 1 start -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="1"
android:layout_row="0"
android:text="XXXXX" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="1"
android:layout_row="1"
android:text="XXXXX" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="1"
android:layout_row="2"
android:text="XXXXX" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="1"
android:layout_row="3"
android:text="XXXXX" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="1"
android:layout_row="4"
android:text="XXXXX" />
<!-- column 1 end -->
</GridLayout>
Esta es una pequeña captura de pantalla de cómo se ve el diseño
Genial. Gracias; pero ... si giro el TextView en una celda TableRow también necesito hacer una especie de ROWSPAN porque el 2011 necesita usar 3 filas ... ¿cómo puedo hacer eso? – Cris
Rowspan no es posible AFAIK. Deberá colocar esa vista girada y las vistas a su lado dentro de RelativeLayout u otro grupo de vista. Eche un vistazo a esta pregunta: http://stackoverflow.com/questions/2189986/android-table-layout-rowspan – Cristian
¡Muchas gracias, su enlace seguramente me ayudará! – Cris