Android: Как заполнить список просмотра многомерным массивом разных типов?

У меня два Arraylists один из класса ArrayList<ClassName> и еще один из ArrayList<String> оба имеют разный размер. Как можно заселить в два списка один вид.

ArrayList<String> содержит время в виде строки, например, скажите "09:00 - 09:30" и ArrayList<ClassName> содержит заказы, сделанные на определенное время.

Таким образом, окончательный вывод списка должен быть таким:

09:00 - 09:30 Забронировано пользователем 1 на дату 31.07.2014
09:30 - 10:00 Доступно
10:00 - 10:30 Доступно
10:30 - 11:00 Доступно

Вот ArrayList<String> имеет размер 4 и ArrayList<Classname> имеет размер 1. Итак, как я могу прийти к этому решению. Пожалуйста, ведите меня.

Заранее спасибо.

1 ответ

Лучше создать общий класс, например RowItemс инкапсулированными данными.

List<RowItem> rowList = RowItem.create(ArrayList<String>, ArrayList<Classname>);
ArrayAdapter<String> itemsAdapter = 
    new ArrayAdapter<String>(context, R.layout.list_item, rowList);

RowItem класс будет иметь такие публичные методы:

class RowItem {

     ...

    public String getTime() {
        ...
    }

    public String getAvailability() {
        ...
    }
}
Другие вопросы по тегам