Я работаю над приложением TV Guide, которое использует ListActivity
, показывающее телешоу по одному каналу / один день за один раз.Я использую RelativeLayout
для элементов ListView
и хочу, чтобы ListView
выглядел примерно так:
07:00 The Breakfast Show
Latest news and topical reports
08:00 Tom and Jerry
More cat and mouse capers
Я получаю данные для элементов ListView
, используя следующий код:
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);
Моя проблема в том, что поле start_time
представляет собой datetime
со следующим форматом:
2011-01-23 07:00:00
, поэтому я получаю следующее:
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
Я хотел бы отформатировать вышеприведенное с использованием SimpleDateFormat
("HH:mm"
), поэтому я получаю только часть hour:minute
поля start_time
.
Я нашелинтерфейс SimpleCursor.ViewBinder
, который предполагает, что это может быть тем, что я хочу, но я не могу понять, как его использовать.Если я прав насчет ViewBinder
, я был бы признателен за несколько советов для примера кода о том, как его использовать.В противном случае, как еще можно добиться изменения поля start_time
для простого отображения формата HH:mm
?