I am trying to implement a listview with a checkbox, so that when the checkbox is checked, the list line will be deleted. I populate the list with the cursor and this works fine and a checkbox is displayed.
I'm having problems with how to get the _id rows of the field being checked.
Can someone show me how to implement something like this
ListView and CheckBox
Cursor cursor = db.getAllItems(); //String[] columns = new String[] {db.KEY_NAME, db.KEY_CODE, db.KEY_ROWID}; 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.setAdapter(myCursorAdapter); CheckBox deleteCheck = (CheckBox)findViewById(R.id.checkBox1); deleteCheck.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { if (isChecked){ // How do I get the list item clicked to delete row? } } });
XML - Row.4.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:weightSum="1"> <TextView android:id="@+id/ingredientName" android:layout_width="wrap_content" android:textColor="#000000" android:layout_height="wrap_content" android:padding="5dp" android:hint="wewewe"/> <TextView android:id="@+id/ingredientMeasurement" android:textColor="#000000" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@+id/ingredientName" android:padding="5dp" android:hint="fefefef"/> <TextView android:id="@+id/ingredientUnit" android:textColor="#000000" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@+id/ingredientMeasurement" android:padding="5dp" android:hint="qqqqq"/> <CheckBox android:id="@+id/checkBox1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="right" android:background="#fff" android:text=""/> </LinearLayout>
source share