我有带复选框的列表项,当用户选中任何复选框时,它应启用图像页脚图标等菜单。现在我的问题是,如果我想从列表中删除任何项目,如何通过单击屏幕底部的删除图标来删除该特定项目?
答案 0 :(得分:1)
您可以使用listview.getCheckedItemPositions()并删除所选的位置。下面是一个例子,我在我的应用程序中使用过。
SparseBooleanArray selected = lvcontacts.getCheckedItemPositions();
SQLiteDatabase db = dbh.getWritableDatabase();
if (selected != null) {
for (int i = 0; i < contacts.size(); i++) {
if (selected.get(i)) {
String s[] = { contacts.get(i).getName(),
contacts.get(i).getEmail(),
contacts.get(i).getNumber() };
db.delete("Contacts", "name=? and email=? and phone=?",
s);
Utils.printLog("Contacts while Delete", s[0] + "$"
+ s[1] + "$" + s[2]);
}
}
}
答案 1 :(得分:0)
您可以使用它来删除列表中的已检查项目。
final int itemCount = getListView().getCount();
for (int i = 0; i < itemCount; i++) {
if (checkedItemPositions.get(i)) {
list.remove(i);
}
}