0

我有一个ListActivity绑定到具有自定义SimpleCursorAdapter的数据库。在我的每个列表项中,我有 4 个文本、图像和复选框(每个都设置为可聚焦:false)。

在列表本身中,我有一个长按钮,所以当我按下它时,我希望它删除所有三个复选框被“选中”的行。

现在,为了实现一个简单的操作,我尝试了很多技术(点击监听器,教程中显示的 CheckedtextView)但都没有成功。

在我@Override onListItemClick之后,还发生了另一个奇怪的现象,当我按下列表的任何行时,我也根本没有接到任何电话。

有谁知道如何解决这些问题?谢谢。

谢谢,

莫希奇。

4

2 回答 2

0

你在打电话super.onListItemClick(ListView, View, int, long);吗?如果是这样,请尝试写出 aLog.d("ListView", "My list has been clicked");并查看是否出现在 Logcat 中。如果没有,请尝试extends ListActivity在您的活动声明中。如果您需要我的帮助,请回复评论,我将竭诚为您提供帮助

于 2013-02-12T10:47:37.770 回答
0
  1. 创建您自己的具有以下功能的适配器

    - 在 getView() 中,您必须为复选框设置单击侦听器(每个复选框都有自己的侦听器)

    -适配器的每个元素都包含已选中/未选中的标志,您应该通过复选框单击上一点的侦听器来设置它

  2. 在使用删除按钮单击侦听器的活动中,您必须从适配器获取已检查的元素并按照您的意愿处理它们
  3. 之后,您应该更新列表视图,例如通过调用 (您的适配器).notifyDataSetChanged()
于 2013-02-12T11:32:14.733 回答