I'm working on a TV Guide app which uses a ListActivity
showing the TV shows for one channel / one day at a time. I'm using a RelativeLayout
for the ListView
items and I want the ListView
to look something like this:
07:00 The Breakfast Show
Latest news and topical reports
08:00 Tom and Jerry
More cat and mouse capers
I get the data for the ListView
items using the following code:
Cursor cursor = db.rawQuery(SELECT blah,blah,blah);
String[] columnNames = new String[]{"start_time","title", "subtitle"};
int[] resIds = new int[]{R.id.start_time_short, R.id.title, R.id.subtitle};
adapter = new SimpleCursorAdapter(this, R.layout.guide_list_item, cursor, columnNames, resIds);
My problem is that the start_time
field is a datetime
with the following format:
2011-01-23 07:00:00
so what I get is this:
2011-01-23 07:00:00 The Breakfast Show
Latest news and topical reports
2011-01-23 08:00:00 Tom and Jerry
More cat and mouse capers
What I'd like to do is format the above using SimpleDateFormat
("HH:mm"
) so I only get the hour:minute
part of the start_time
field.
I've found the SimpleCursor.ViewBinder
interface which suggests it may be what I want but I can't figure out how to use it. If I'm right about ViewBinder
, I'd appreciate some pointers to sample code on how to use it. Otherwise, how else can I achieve changing the start_time
field to simply show HH:mm
format?