Casilla de verificación en CursorAdapter

Leí esta entrada

Pero no puedo resolver mi problema. I usando el CursorAdapter en listview.

Tengo una casilla de verificación en cada uno de los elementos de list.if marcó la casilla de verificación y el desplazamiento hacia arriba y hacia abajo. La casilla de verificación se desactivará. No puedo arreglarlo por favor, ayúdame.

@Override public void bindView(View view, Context context, final Cursor cursor) { TextView tv1 = (TextView)view.findViewById(R.id.txt_name); TextView tv2 = (TextView)view.findViewById(R.id.txt_numer); tv1.setText(cursor.getString(2)); tv2.setText(cursor.getString(3)); final int pos = cursor.getPosition(); final CheckBox repeatChkBx = (CheckBox)view.findViewById(R.id.favorite_check); String likes = cursor.getString(cursor.getColumnIndex("like")); if (likes.equals("yes")) { repeatChkBx.setChecked(true); } else { repeatChkBx.setChecked(false); } repeatChkBx.setOnClickListener(new OnClickListener() { @Override public void onClick(View view) { MyDatabase mydatabase = new MyDatabase(b); SQLiteDatabase mydb = mydatabase.getWritableDatabase(); cursor.moveToPosition(pos); if (repeatChkBx.isChecked()) { ContentValues cv = new ContentValues(); cv.put("like", "yes"); mydb.update("list", cv, "id ="+cursor.getString(1), null); } else { ContentValues cv = new ContentValues(); cv.put("like", "no"); mydb.update("list", cv, "id ="+cursor.getString(1), null); } mydb.close(); } }); } 

I utilizando una base de datos externa y una columna similar para guardar el elemento favorito.

 if (likes.equals("yes")) { repeatChkBx.setChecked(true); } else { repeatChkBx.setChecked(false); } 

Aquí se establece la marca CheckBox una y otra vez cuando un bindView llamado después de su desplazamiento de un ListView. Una opción de usuario no se memoriza y restablece en el CheckBox. Necesita memorizar la elección del usuario de CheckBox y configurarlo en bindView.

  • Fila listView personalizada con casilla de verificación y marcas de verificación de ahorros en la rotación
  • Android Espresso - Haga clic en la casilla de verificación si no está marcada
  • Android: casilla de verificación que se repite cada 10º en un listview
  • NotifyDataSetChanged para varias casillas de verificación
  • El listview personalizado con una sola casilla de verificación se selecciona uno a la vez
  • ¿Cómo guardar el estado de un Android CheckBox cuando los usuarios salen de la aplicación?
  • Android: vinculación de datos de una base de datos a un CheckBox en un ListView?
  • Cómo obtener un problema al comprobar la casilla de verificación generada dinámicamente a través de la vista de lista
  • Android setOnCheckedChangeListener vuelve a llamar cuando la vista anterior vuelve
  • Android CheckBoxPreference - un / marque todas las preferencias
  • Checkbox listener en RecyclerView con DataBinding
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.