J'ai maintenant passé une journée entière à essayer d'obtenir une ligne personnalisée à charger. Il semble y avoir beaucoup d'exemples ici sur StackOverflow et d'autres endroits sur la façon de lier une case à cocher à une rangée de données dans une liste de lecture Android, mais ils semblent tous être incomplets.Android ListView avec une case à cocher
Voici ce que j'ai (row.xml):
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="40dip"
android:orientation="horizontal" android:background="@drawable/row_bk"
android:layout_gravity="center_vertical">
<TextView android:id="@+id/ItemID"
android:layout_weight="0" android:visibility="gone"
android:layout_width="0dp" android:gravity="center"
android:layout_height="wrap_content" />
<TextView android:id="@+id/Title"
android:layout_width="0dp" android:textColor="#666"
android:layout_weight="1" android:layout_height="40dip"
android:padding="5dp" android:gravity="center_vertical"
android:textSize="17dip" />
<CheckBox android:id="@+id/chkCheck" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:focusable="false" android:focusableInTouchMode="false" android:clickable="true"></CheckBox>
</LinearLayout>
Dans le code, j'ai un SimpleCursorAdapter, peuplant le ListView.
Cursor oLoop = db
.rawQuery(
"select _id, title, is_checked from tbl",null);
startManagingCursor(oLoop);
String[] from = new String[] { "_id", "title", "is_checked" };
int[] to = new int[] { R.id.ItemID, R.id.Title, R.id.chkCheck };
SimpleCursorAdapter oList =
new SimpleCursorAdapter (this, R.layout.task_item_row, oLoop, from,
to);
setListAdapter(oList);
Passé ce délai, je ne suis pas vraiment sûr de ce qu'il faut faire. Si quelqu'un pouvait me donner un bon exemple, ce serait formidable. L'objectif est de pouvoir basculer les cases à cocher.
Merci d'avance! Alex
Yup, c'est fait! C'était la pièce qui me manquait !! Certainement, pas une étape évidente non plus. Je vais devoir documenter cela quelque part pour la postérité. – LTMOD
@LTMOD Son dans la documentation [SimpleAdapter] (http://developer.android.com/reference/android/widget/SimpleAdapter.html). –