Используйте ArrayAdaptor: посмотрите пользовательский ListView на Google: (первый результат) http://www.softwarepassion.com/android-series-custom-listview-items-and-adapters/
По сути, вам нужно спроектировать макет вашего подсписка в XML, а затем спроектировать макет вашего основного ListView в XML.
Я думаю, что вы должны использовать wrap_content
для своего подсписка, ширина: fill_parent
для основного списка и высота: wrap_content
для основного списка.
Затем вам нужно два класса для хранения необходимых данных каждого элемента (один для основного списка, содержащего один из ваших подсписков).
Затем вы создаете ArrayList и ArrayList (хранятся в каждом MyMainItem).
Затем вам нужно создать два класса, расширяющих ArrayAdaptor:
MainAdapter расширяет ArrayAdaptor и SecondaryAdapter
В каждом вашем ArrayAdapter вам нужно сохранить список элементов и переопределить конструктор следующим образом:
private ArrayList<MyObj> items = new ArrayList<MyObj>();
public ArticlesAdapter(Context context, int textViewResourceId,
ArrayList<MyObj> items) {
super(context, textViewResourceId, items);
this.items = items;
}
В каждом адаптере вам придется переопределять метод
@Override
public View getView(int position, View convertView, ViewGroup parent)
как показано в учебнике
Но не забудьте в вашем MainAdapter вызвать setAdaptor () для subListView.
Будьте осторожны с методом getView: вы должны получить нулевой объект, поэтому обязательно проверьте его, чтобы избежать исключения NullPointerException
Надеюсь, я тебе помог. Это стоит щедрости: -)