Ich kann nicht auf die ListView in Android klicken?

7

Ich habe eine App mithilfe der Kontaktsynchronisierung erstellt. Ich liste folgende Kontaktdaten mit Foto, Name und Nummer auf. Ich habe alle diese Dinge erfolgreich in einer benutzerdefinierten ListView aufgelistet, aber ich kann nicht auf ListView klicken. Es sieht aus wie gesperrt, kann nicht darauf klicken.

Aber ich machte eine gleiche Prozedur für eine andere Aktivität. Verwenden Sie benutzerdefinierte ListView , aber ich kann auf diese Ansicht klicken und es funktioniert gut.

Was ist das Problem? Hier ist meine Beispielcodierung:

%Vor%

Hier ist ContactList eine Klasse, die den Kontaktnamen, die Nummer und das Byte [] für imageBlob hat. Wenn das Bild null ist, setze ich den Standard-ic_launcher als Kontaktbild. Die Adapterklasse ist:

%Vor%

Ich habe mehr als 100 Kontakte, also nur 3 Objekte hinzugefügt. In dieser Kontaktliste bekomme ich erfolgreich Kontaktbild, Name, Nummer.

Was ist das Problem, auf das ListView nicht klicken kann? Ich hoffe jeder von euch wird mich führen. Vielen Dank im Voraus.

Danke an alle. jetzt das Ergebnis, indem Sie einfach android:focusable="false" in meine alle untergeordneten Ansichten einfügen. Danke für Ihre Hilfe.

    
Amarnath 26.06.2012, 08:46
quelle

6 Antworten

8

In verschachtelten Ansichten erhält die untergeordnete Ansicht immer zuerst alle Berührungsereignisse. Wenn Sie die übergeordnete Ansicht (in Ihrem Fall die Zeile listView) möchten, um ein Berührungsereignis zu erhalten, müssen Sie für die untergeordneten Ereignisse false zurückgeben oder sie im Manifest auf android:clickable="false" setzen.

    
thepoosh 26.06.2012, 08:49
quelle
7

hinzufügen

%Vor%

und

%Vor%

für jede untergeordnete Ansicht wie Bildansicht, Textansicht, Kontrollkästchen usw. Ihres Zeilenlayouts bedeutet in manage_track_list_custom_view.xml

    
Khan 26.06.2012 09:14
quelle
3

Ich denke, du musst all deine anklickbaren Dinge einstellen, zB. Checkboxen, Buttons etc. als nicht fokussierbar (in der Adapterklasse).

%Vor%     
Yogesh Somani 26.06.2012 09:17
quelle
1

Versuchen Sie Folgendes:

Wenn Sie die listView hinzufügen, rufen Sie

auf %Vor%

Sehen Sie sich hier für weitere Informationen.

    
Behzad Momahed Heravi 26.06.2012 09:19
quelle
0

Sie können onclick listner für die View-Zeile in der ContactListAdapter-Klasse festlegen.

%Vor%     
Chrishan 26.06.2012 09:18
quelle
0

Ich habe das selbe Problem, wenn ich nicht auf einen anderen Teil eines Gegenstandes in der Listenansicht klicken kann, kann nur in Textansicht oder Bildansicht innerhalb dieses Gegenstandes klicken. Also setze ich meine Textansicht:

%Vor%

mein Artikel so:

%Vor%

Und Klickereignis funktionierte gut, weil ich auf die Textansicht klicke. Hoffnung wird jedem helfen, hat dasselbe Problem.

    
nobjta_9x_tq 19.06.2015 07:31
quelle