Android: ListView со сложной моделью данных
Я хотел бы отобразить массив "сложных" данных в ListView. В очень упрощенной форме моя модель данных будет выглядеть примерно так:
class ListPlacesValues {
String idObject;
String name;
String city;
String country;
ArrayList<String> classification;
double distance_quantity;
DistanceUnit distance_unit;
[...more stuff ...]
}
Я знаю, что могу преобразовать свои сложные данные в HashList, а затем просто использовать SimpleAdapter:
SimpleAdapter mAdapter = new SimpleAdapter(
this,
hashList,
R.layout.places_listitem,
new String[] { "name", "city", "country"},
new int[] { R.id.name, R.id.city, R.id.country}
);
Тем не менее, я бы предпочел использовать свою модель данных напрямую, но я не знаю, с чего и как начать, так что в конце я могу сделать что-то вроде этого:
ArrayList<ListPlacesValues> values = getData();
MyAdapter mAdapter = new MyAdapter(
this,
values,
R.layout.places_listitem,
ListPlacesValues { values.name, values.city, values.country},
new int[] { R.id.name, R.id.city, R.id.country}
);
Решение: Я нашел этот пример Android API (песни14), что было действительно полезно.