Android 如何从可展开列表视图中删除组

Android 如何从可展开列表视图中删除组,android,expandablelistview,Android,Expandablelistview,我正在尝试使用代码从所选组获取主键“\u id” groupPositionID是一个全局变量,初始化如下 IngredientListGroup\u游标是一个组游标,用于获取可扩展列表视图的组数据 String groupPositionID=null; Cursor IngredientListGroup_cursor; 在oncreate代码中: public void onCreate(Bundle savedInstanceState) { IngredientListGroup_c

我正在尝试使用代码从所选组获取主键“\u id”

groupPositionID是一个全局变量,初始化如下 IngredientListGroup\u游标是一个组游标,用于获取可扩展列表视图的组数据

String groupPositionID=null;
Cursor IngredientListGroup_cursor;
在oncreate代码中:

public void onCreate(Bundle savedInstanceState) {
IngredientListGroup_cursor=helper.GetIngredientsList();
}

ExpandableIngredietnsList.setOnGroupClickListener(new OnGroupClickListener(){

                @Override
                public boolean onGroupClick(
                        ExpandableListView paramExpandableListView,
                        View paramView, int paramInt, long paramLong) {
                    // TODO Auto-generated method stub

                    groupPositionID=IngredientListGroup_cursor.getString(0);

                    Toast toast = Toast.makeText(getBaseContext(),groupPositionID ,Toast.LENGTH_LONG);       
                    toast.show();
                    return false;
                }

            });
这是我的SQLhelper函数,用于从数据库中删除选定的组

public Cursor GetIngredientsList(){

    return(getReadableDatabase().rawQuery("SELECT _id,Ingredient_name FROM tblIngredients",null));

}

public Cursor DeleteIngredientsList_Item(String index){
        String[] args={index};
        return(getReadableDatabase().rawQuery("DELETE FROM tblIngredients WHERE _id=?",args));

}
我面临的问题是,虽然我从游标中获取所选组的id(我可以将其视为toast),但是,为什么我不能从上下文菜单中删除它呢

从上下文菜单中选择“删除”时,应正确执行以下代码

public boolean onOptionsItemSelected(MenuItem IngredientItem){
    if(IngredientItem.getItemId()==R.id.addIngredient){
        Intent i= new Intent(Ingredients_List.this,Ingredients_Add.class);
        startActivity(i);
        return(true);
    }
    else if (IngredientItem.getItemId()==R.id.deleteIngredient) {

        if(groupPositionID!=null){
              helper.DeleteIngredientsList_Item(groupPositionID);
              return(true);
            }
            else{
                Toast.makeText(getBaseContext(), "Select The Ingredient You want to delete", Toast.LENGTH_LONG).show(); 
            }
    }
    return (super.onOptionsItemSelected(IngredientItem));

} 
我从这里的“groupPositionID”变量获取所选主键id值。。准确的值也会传输到数据库原始查询。。。仍然没有得到我所期望的

请尽快帮助我对android和java都是新手

sdk信息(尽管不是必需的)

提前谢谢

public void DeleteIngredientsList_Item(long index){

    String[] args = new String[]{Long.toString(index)};
    Log.v("I am in", "SQLHelper");
    getWritableDatabase().execSQL("DELETE FROM tblIngredients WHERE _id=?",args);

}
我在mysql helper中修改了这个删除代码

我的函数在前面返回游标,这就是它不工作的原因。。。实际查询中的meanz未被执行

休息时间还行……)

public void DeleteIngredientsList_Item(long index){

    String[] args = new String[]{Long.toString(index)};
    Log.v("I am in", "SQLHelper");
    getWritableDatabase().execSQL("DELETE FROM tblIngredients WHERE _id=?",args);

}