I am really confused now as to which one to learn. I am an iPhone app developer and now learning Android development.
I have learnt how to use a ListView
1. If you want dynamic data on CUSTOM VIEW in a list form, then ListView with BaseAdapter or ArrayAdapter is the way to go.....
2. TableLayout will be of completely different use, mostly i use it for showing data which are needed to be displayed in stack form..(ie one over the other....)
See these below links for quick understanding and implementation:
http://www.ezzylearning.com/tutorial.aspx?tid=1763429
http://www.vogella.com/articles/AndroidListView/article.html