В принципе, я ищу, чтобы заполнить ListView значением «test» и значением «createdAt». Я выяснил, как получить один из них в списке, но не оба. Очевидно, что я не понимаю, как это работает на довольно фундаментальном уровне. Я не знаю, как получить два разных типа данных (строка и дата), чтобы они отображались вместе в одном элементе ListView. Я знаю, что SimpleAdapter нужен список, содержащий карту, но если я могу хранить только одну пару, пару значений на карте, как я могу отображать более одного значения за раз?Отображение двух разных типов данных из объекта в Listview
public void done(List<ParseObject> results, ParseException e) {
if (e == null) {
ArrayList<HashMap<String, Date>> messages= new ArrayList<HashMap<String, Date>>();
for (ParseObject result : results) {
HashMap<String, Date> testMap = new HashMap<String,Date>();
HashMap<String, String> dateMap = new HashMap<String,String>();
testMap.put("test",(String)result.get("test"));
dateMap.put(createdAtKey,(Date)result.getCreatedAt());
messages.add(message);
//What do I do with the "test"values?
}
SimpleAdapter adapter = new SimpleAdapter(FeedActivity.this, messages,android.R.layout.simple_list_item_2, new String[] {testKey,createdAtKey}, new int[] {android.R.id.text1, android.R.id.text2 });
setListAdapter(adapter);
} else {
Log.e(TAG, "Exception caught!", e);
}
}
});
}
вы должны создать свой собственный адаптер, который сабы BaseAdapter, то вы можете делать все, что вы хотите. –