我正在开发一个简单的待办事项列表应用程序,在主视图中我有一个任务列表,每个任务都有一个复选标记,如下图所示:
单击复选标记后,我希望从列表中删除相应的任务。我尝试将其实现为TextViews(用于任务)和按钮(用于复选标记),但我需要知道所单击的复选标记(0,1,2或3)的数量/位置以从我的删除正确的任务阵列。我可以得到一些如何吗?
我还想过将任务/复选标记实现为ListView,但是我只需要在复选标记上设置onItemClickListener,而不是在任务文本上设置。这可能吗?
还有其他想法吗?感谢。
答案 0 :(得分:2)
Checkbox有一个标记属性,可用于设置自定义数据,如行号。这样的事情应该有用,
checkbox.setTag(row_number);
所以当你点击它时,做一些像
这样的事情int rowNum = Integer.parseInt(checkbox.getTag());
removeTaskAt(rowNum);
答案 1 :(得分:0)
如果您正在使用自定义适配器,则可以在检查getView上添加单击侦听器,因此单击仅在复选框上,而不在完整项目上。
唯一的问题是,如果您尝试通过单击复选框滚动,滚动可能无效。