Android使用onContextItemSelected删除单个联系人

时间:2018-06-27 08:59:44

标签: android sqlite

我的Android作业我需要一些帮助。 我正在尝试使用ListFragment上的上下文菜单删除单个联系人,它弹出一个删除条目,我希望它删除一个单个联系人,我想我需要从一个ID中识别出来。 我已经能够删除整个表格,但是我只需要删除一个联系人(行)

在我的Inventory_List片段中

@Override
public boolean onContextItemSelected(MenuItem item) {
    int position;
    DBAdapter db = new DBAdapter(getContext());
    super.onContextItemSelected(item);
    if (item.getTitle() == "Delete") {
        AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
        position = (int) info.id;
        db.deleteContact(position);

    }
    return true;
}

}

在我的DBAdapter中

 //---deletes a particular contact---
public boolean deleteContact(int rowId)
{
    return db.delete(DATABASE_TABLE, KEY_ROWID + "=" + rowId, null) > 0;
}

我也在Inventory_List片段中尝试过,但是它删除了所有联系人。有人知道我需要做什么吗????拜托了吗?

@Override
public boolean onContextItemSelected(MenuItem item) {

    DBAdapter dba2 = new DBAdapter(getActivity());
    dba2.open();
    dba2.deleteContact((int) getSelectedItemId());
    dba2.close();
    MainActivity.entries.clear();

    return true;
}

0 个答案:

没有答案