在列表视图的项目单击中添加/删除活动中的项目

时间:2018-03-13 13:21:36

标签: android listview

我在SO中搜索了很多,但没有得到类似的类型线程。在我的应用程序中,当用户点击listview的项目时,我需要在活动的布局中添加或删除项目。 Listview使用自定义数组适配器显示数据。如果用户点击了某个项目,那么它将被添加到活动的布局中,并进一步点击同一项目,它将被删除。我不知道如何完成这项任务。在这种情况下,任何帮助都将受到赞赏。

这是一张图片:

enter image description here

1 个答案:

答案 0 :(得分:0)

我不知道你想要什么UI效果。
1.如果您想在滚动列表中修复图像中的顶部面板部分(不滚动),则可以:

  
      
  • 使用LinearLayout作为根元素
  •   
  • 添加LinearLayout作为顶部面板
  •   
  • 在顶部面板下方添加ListView
  •   
  • 创建一个selectedView.xml,用于单击ListView
  • 项目时添加到顶部面板的内容   

当用户点击ListView的项目时,您可以尝试以下代码:

ItemModel itemData = dataList.get(position)
// inflate selectItemView and add to top panel
View selectItemView= LayoutInflater.from(this).inflate(R.layout.selectedView, topPanelView, true);
View text1 = selectItemView.findViewById(xxx);
text1.setText(itemData.getxxx);
...
//inflate other field using itemData
...
  1. 如果您希望滚动ListView时顶部面板滚出顶部 将顶部面板设为HeaderView的{​​{1}},然后按照步骤1和代码进行操作。