vendredi 5 février 2016

Android CheckBox Delete

I am having some serious issues with this, I have a listview that is populated with entries in a database, I have a custom row for each of the row in the listview (TextView1|TextView2|TextView3|Checkbox).

All I want to do is put a listener on each of the check boxes so when it is checked it is removed from the listview and deleted from the database. I have a function that deletes the row from the database when it is passed the value for Textview1.

The issue I am having is trying to get the row id from the checked box or even the textview value. I have searched everywhere but still cant get anything to work

CheckBox

Cursor cursor = db.getAllItems();

    //String[] columns = new String[] {db.KEY_NAME, db.KEY_CODE, db.KEY_ROWID};
    final String[] columns = new String[] {db.KEY_ITEM_NAME, db.KEY_MEASUREMENT, db.KEY_UNIT};

    int[] to = new int[] {R.id.ingredientName, R.id.ingredientMeasurement, R.id.ingredientUnit};

    final SimpleCursorAdapter myCursorAdapter = new SimpleCursorAdapter(this,R.layout.row4, cursor, columns, to, 0);

    final ListView shoppingList = (ListView) findViewById(R.id.shoppingList);
    shoppingList.setClickable(false);
    //shoppingList.setChoiceMode(shoppingList.CHOICE_MODE_SINGLE);
    shoppingList.setAdapter(myCursorAdapter);

    CheckBox check = (CheckBox) findViewById(R.id.checkBox1);
    check.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
            if (buttonView.isChecked()) {
                //how do i get the row_id or the text view value?
            } else {
                //do nothing
            }
            }

        });




Aucun commentaire:

Enregistrer un commentaire