我有带有复选框的列表项,当用户选择任何复选框时,它应该启用菜单,如图像页脚处的图标。现在我的问题是,如果我想从列表中删除任何项目,如何通过单击屏幕底部的删除图标来删除该特定项目?
问问题
105 次
2 回答
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]);
}
}
}
于 2012-12-21T12:24:45.893 回答
0
您可以使用它来删除列表中的已检查项目..
final int itemCount = getListView().getCount();
for (int i = 0; i < itemCount; i++) {
if (checkedItemPositions.get(i)) {
list.remove(i);
}
}
于 2012-12-21T12:30:34.807 回答