Я работаю над приложением для конференций, в котором мы хотим, чтобы сессии сначала группировались по времени, а затем по местоположению комнаты.Я успешно отсортировал по одному или другому в моей ExpandableListActivity, но безуспешно с первичной и вторичной сортировкой.
приложение конференции, которое отображает сеансы, сначала сгруппированные по времени, а затем по местоположению комнаты http://coreylatislaw.com/wp-content/uploads/2012/03/sort-issue.png
Настройка
- Пользовательский поставщик контента (расширяет ContentProvider)
- Пользовательский адаптер списка (расширяет BaseExpandableListAdapter)
- Пользовательский списокактивность (расширяет ExpandableListActivity)
Запрос
Cursor cursor = context.getContentResolver()
.query(uri,
ScheduleData.PROJECTION,
null,
null,
ScheduleData.SORT_ORDER);
Порядок сортировки
public static final String SORT_ORDER = TimeSlots.QUALIFIED_TIMESTART + " ASC"; // timeslots.timestart
Неудачные первичные и вторичные заказы на сортировку
public static final String SORT_ORDER = TimeSlots.QUALIFIED_TIMESTART + " ASC, " + Locations.QUALIFIED_NAME + " ASC"; // timeslots.timestart ASC, locations.name ASC
public static final String SORT_ORDER = TimeSlots.QUALIFIED_TIMESTART + ", " + Locations.QUALIFIED_NAME + " ASC"; // timeslots.timestart, locations.name ASC
Второе предложение, похоже, не влияет на порядок.Это ограничение ExpandableListActivity?Нужно ли указывать несколько элементов порядка сортировки по-разному?