从AlertDialog中的SQLITE DB获取ID_ROW

时间:2012-10-11 14:25:59

标签: android listview alertdialog

我如何从数据库中获取ID_ROW?

AlertDialog

protected Dialog onCreateDialog(int id){

        switch(id){
        case MENU_1:

            builder=new AlertDialog.Builder(this);
            builder.setTitle("TITLE");
            builder.setAdapter(scAdapter, null);

            builder.setSingleChoiceItems(scAdapter, 0, new DialogInterface.OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {
                    // TODO Auto-generated method stub
                    Toast.makeText(getApplicationContext(), "ROW_ID:"+which,Toast.LENGTH_SHORT).show();
                }
            });

            dialog = builder.create();
            dialog.show();
        }
        return null;
  }

但是 - 不是ROW_ID(SQLITE),它是位置编号。

1 个答案:

答案 0 :(得分:1)

您应该可以致电scAdapter.getItemId(which)。如果它是游标适配器,它将返回_id列的值。如果它是自定义适配器,您可能需要覆盖getItemId()方法以获取所需的数据。