【转】Android中ListView动态添加删除项

本文详细介绍了如何使用SimpleAdapter为ListView提供数据展示,并通过自定义适配器来更新列表项内容。包括了添加和删除数据项的功能实现,以及对应的布局定制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SimpleAdapter listItemAdapter;  // ListView的适配器
ArrayList<HashMap<String, Object>> listItem; // ListView的数据源,这里是一个HashMap的列表
ListView myList; // ListView控件

listItem = new ArrayList<HashMap<String, Object>>();
listItemAdapter = new SimpleAdapter(this, listItem, R.layout.mylayout,
new String[]{"image", "title", "text"},
new int[]{R.id.ItemImage, R.id.ItemTitle, R.id.ItemText});
myList = (ListView)findViewById(R.id.TaxiList);
myList.setAdapter(listItemAdapter);[/code]
(关键)添加两个私有的功能函数,通过更新数据集合itemlist来改变内容项,再通过adapter的notifyDataSetChanged()来更新显示
private void addItem()
{
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("image", R.drawable.icon);
map.put("title", "标题");
map.put("text", "要显示的内容");
listItem.add(map);
listItemAdapter.notifyDataSetChanged();
}

private void deleteItem()
{
int size = listItem.size();
if( size > 0 )
{
listItem.remove(listItem.size() - 1);
listItemAdapter.notifyDataSetChanged();
}
}

另附上ListView的项自定义的Layout:
<?xml version="1.0" encoding="utf-8"?>  
<RelativeLayout
android:id="@+id/RelativeLayout01"
android:layout_width="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:paddingBottom="4dip"
android:paddingLeft="12dip"
android:paddingRight="12dip">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/taxi1"
android:id="@+id/ItemImage"
android:paddingTop="4dip">
</ImageView>
<TextView
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="DaZhong Taxi Corporation"
android:layout_toRightOf="@+id/ItemImage"
android:id="@+id/ItemTitle"
android:textSize="24dip"></TextView>
<TextView
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="Tel:021-67786874"
android:id="@+id/ItemText"
android:layout_below="@+id/ItemTitle"
android:layout_toRightOf="@+id/ItemImage">
</TextView>
</RelativeLayout>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值