ListActivity avec case à cocher dans Android
-
22-09-2019 - |
Question
Je suis en train d'utiliser ListActivity et un SimpleCursorAdapter cocher des cases sur la base d'une requête à partir d'une base de données. Le curseur est une liste de questions et réponses. Si l'utilisateur a déjà répondu à une question de la case doit être cochée mais ils ne sont pas vérifiées. Le code ressemble à ceci:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.questions);
Cursor c;
testDbAdapter db = new testDbAdapter(this);
c = db.getQuestions(Long.toString(mRowId), Integer.toString(mSection));
startManagingCursor(c);
String[] from = new String[]{testDbAdapter.QUESTIONS_Q, testDbAdapter.QUESTIONS_A};
int[] to = new int[]{R.id.question, R.id.answer};
SimpleCursorAdapter results = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_multiple_choice, c, from, to);
setListAdapter(results);
}
La solution
Vous pouvez étendre l'adaptateur et remplacer la méthode Bindview, ou appelez setViewBinder. Quelques solutions détaillées à ce leur réponse dans une question similaire ici:
Android: liaison de données à partir une base de données à un CheckBox dans un ListView
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow