ListView 怎么动态刷新 删除 添加

ListView 怎么动态刷新 删除 添加,第1张

用notifyDataSetChanged()

是可以刷新

但是

不能

把之前的去掉

反而会在下面增加。

------解决方案--------------------------------------------------------

假设你的

ListView控件

名称为listview,

那么在删除 *** 作后,用下面代码刷新

其中0表示ListView里面的第1个位置,代码运行后将会返回到ListView的第1个位置,如果需要返回到最后一个位置,则用listview.setSelection(listview.getCount()-1)

声明这个ListvIew

/生成动态数组,加入数据

listItem = new ArrayList<HashMap<String, Object>>()

map = new HashMap<String, Object>()

for(int i=0i<10i++)

{

// 后台数据

HashMap<String, Object>  map = new HashMap<String, Object>()

map.put("ItemImage", R.drawable.checked)来下

map.put("ItemTitle", "Level ")

map.put("ItemText", "Finished in 1 Min 54 Secs, 70 Moves!")

listItem.add(map)

}

list.setOnItemClickListener(new OnItemClickListener()

{

@Override

public void onItemClick(AdapterView<?>arg0, View arg1, int arg2,long arg3)

{

删除 *** 作

listItem.remove(position)//选择行的位置

listItemAdapter.notifyDataSetChanged()

list.invalidate()

listview会删除选择的行,重新更新

}

})

这个listview动态增减很简单的,你从适配器的数据着手,就是你遍历的数据,然后增的话在数据中加多一条数据,然后adapter.notifiyDataSetChanged()长按d出菜单就是listview的那个长按监听事件,好像是什么OnItemLong什么的,你找下,在那里调用菜单


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/7954194.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-11
下一篇2023-04-11

发表评论

登录后才能评论

评论列表(0条)

    保存