我试图为每个列表项添加不同的图标,但我遇到了麻烦。我们的想法是将每个列表视图项目放在一起以便于编辑,但添加图像比我想象的要复杂得多。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ArrayList<Map<String, String>> list = buildData();
String[] from = { "title", "description" };
int[] to = { android.R.id.text1, android.R.id.text2 };
SimpleAdapter adapter = new SimpleAdapter(this, list,
android.R.layout.simple_list_item_2, from, to);
setListAdapter(adapter);
}
private ArrayList<Map<String, String>> buildData() {
ArrayList<Map<String, String>> list = new ArrayList<Map<String, String>>();
list.add(putData("Title 1", "Description 1"));
list.add(putData("Title 2", "Description 2"));
list.add(putData("Title 3", "Description 3"));
return list;
}
private HashMap<String, String> putData(String name, String purpose) {
HashMap<String, String> item = new HashMap<String, String>();
item.put("name", name);
item.put("purpose", purpose);
return item;
}
答案 0 :(得分:1)
如果不是不可能,那么至少在您当前的设置中非常麻烦。
正如名称所述 SimpleAdapter 是一个基本类,它为您提供基本功能。通常是 - 带有文本视图的列表。
创建适配器时,为其中的每个项目指定一个确切的布局(即你的android.R.layout_simple_list_item_2)。你不能在那里推送任何其他物品(除非你真的很顽固)。
你需要什么:
这是一个很好的演示:http://hmkcode.com/android-custom-listview-titles-icons-counter/
答案 1 :(得分:0)
您可以在listview中使用自定义适配器。所以可以自定义你的行。 检查this
答案 2 :(得分:0)
目前正在ListView
使用simple_list_item_2.xml
。这个布局只包含两个TextView。因此无法使用SimpleAdapter
布局
如何在Android中列出视图项目添加图片?
应创建自定义适配器:
1。创建一个包含所需视图的自定义布局,希望在每个列表视图行中显示,如TextView,ImageView,...
2。通过扩展getView
类来更改{{1}}方法的行为来创建自定义适配器类,以便从数据源显示图像和textview
请参阅以下教程以供参考: