Wie verbinde ich ein Kontrollkästchen für jeden Kontakt in der ausgefüllten Listenansicht?

Ich hatte große Probleme mit diesem Problem. Ich habe eine Listenansicht, die Folgendes enthält:

ImageView / contactName / TextView / CheckBox

DasKontaktname In der Listenansicht wird aufgefüllt, indem die Kontakte auf dem Telefon von einem gelesen werdenSimpleCursorAdapter. Alle for-Elemente zeigen an, wann die App ausgeführt wird, aber das Problem, das ich habe, besteht darin, die Kontrollkästchen mit dem entsprechenden Element in der Liste zu verbinden.

Durch einige Nachforschungen fand ich heraus, dass ich a verwenden mussgetView () Um die Kontrollkästchen mit den Elementen in der Liste zu verknüpfen, kann ich es aus praktischen Gründen nicht richtig machen. Außerdem hat keines der Beispiele, die ich ausprobiert habe, wirklich erklärt, wie getView () angewendet wird. Das umfassendste Beispiel, an dem ich gearbeitet habe, ist von hier:

http://androidcocktail.blogspot.com/2012/04/adding-checkboxes-to-custom-listview-in.html

Der Clou ist, dass dies meine Listenansicht liest und mit meinen Kontakten füllt:

<code>private void populateContactList() {
    // Build adapter with contact entries
    Cursor cursor = getContacts();
    String[] fields = new String[] {
            ContactsContract.Data.DISPLAY_NAME       
    };

    SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.contact_entry, cursor,
            fields, new int[] {R.id.contactEntryText});    
    lv.setAdapter(adapter);        
} // END POPULATECONTACTLIST


private Cursor getContacts()
{ 
    // Run query
    Uri uri = ContactsContract.Contacts.CONTENT_URI;
    String[] projection = new String[] {
            ContactsContract.Contacts._ID,
            ContactsContract.Contacts.DISPLAY_NAME
    };
    String selection = ContactsContract.Contacts.IN_VISIBLE_GROUP + " = '" +
            (chkboxAllVisible ? "0" : "1") + "'";
    String[] selectionArgs = null;
    String sortOrder = ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC";

    return managedQuery(uri, projection, selection, selectionArgs, sortOrder);
} // END GETCONTACTS 
</code>

Wie verknüpfe ich jedes Kontrollkästchen mit den entsprechenden Kontaktelementen in meiner Listenansicht?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage