Hello, TableLayout

A TableLayout is a ViewGroup that will Lay child View elements into rows and columns.

  1. Start a new project / Activity called HelloTableLayout.
  2. Open the layout file. Make it like so:
    1
    
      <? xml version = "1.0" encoding = "utf-8"?> <TableLayout xmlns: android = "http://schemas.android.com/apk/res/android" android: layout_width = "fill_parent" android: layout_height = "fill_parent" android: stretchColumns = "1"> <TableRow> <TextView android:layout_column="1" android:text="Open..." android:padding="3dip" /> <TextView android: text = " Ctrl-O "android: gravity =" right "android: padding =" 3dip "/> </ TableRow> <TableRow> <TextView android: layout_column =" 1 "android: text =" Save ... "android: padding = "3dip" /> <TextView android:text="Ctrl-S" android:gravity="right" android:padding="3dip" /> </ TableRow> <TableRow> <TextView android: layout_column = "1" android: text = "Save As ..." android: padding = "3dip" /> <TextView android:text="Ctrl-Shift-S" android:gravity="right" android:padding="3dip" /> </ TableRow > <View android:layout_height="2dip" android:background="#FF909090" /> <TableRow> <TextView android:text="X" android:padding="3dip" /> <TextView android: text = "Import. .. "android: padding =" 3dip "/> </ TableRow> <TableRow> <TextView android:text="X" android:padding="3dip" /> <TextView android: text =" Export ... "android : padding = "3dip" /> <TextView android:text="Ctrl-E" android:gravity="right" android:padding="3dip" /> </ TableRow> <View android: layout_height = "2dip" android: background = "# FF909090" /> <TableRow> <TextView android:layout_column="1" android:text="Quit" android:padding="3dip" /> </ TableRow> </ TableLayout>

    Notice How this resembles the structure of an HTML Table. TableLayout is like the table element; TableRow is like a tr element; but for our cells like the HTML td element, we can use any kind of View. Here, we use TextView for the cells.

  3. Make sure your Activity loads this layout in the onCreate() method:
    1
    
      public void onCreate (Bundle savedInstanceState) (super.onCreate (savedInstanceState); setContentView (R.layout.main);)

    R.layout.main refers to the main.xml layout file.

  4. Run it.

You should see the following: