View.setFocusable () und View.setClickable () wirken sich im benutzerdefinierten ArrayAdapter entgegengesetzt aus

8

Dies ist eine Folge dieser Frage wo Reimar Twelker vorgeschlagen hat, View.setFocusable() und View.setClickable() zu verwenden, um Zeilen in einer Listenansicht mit zu aktivieren / deaktivieren ein ArrayAdapter.

Ich habe versucht, dies zu tun, aber ich bekomme das Gegenteil von dem, was ich erwarten würde. Wenn ich

benutze %Vor%

Die Zeile ist deaktiviert (kein Effekt, wenn ich sie drücke). Und wenn ich das Gegenteil benutze:

%Vor%

Die Zeile ist aktiviert (Auswahl wird angewendet, wenn ich sie drücke).

Irgendwelche Hinweise darauf, was passieren könnte?

Hier ist der Inhalt meines Layouts:

%Vor%

Ich verwende es in einem Warndialog wie folgt:

%Vor%

und StyleAdapter ist wie folgt definiert:

%Vor%

Um den Effekt von setFocusable() und setClickable() zu testen, ändere ich einfach den Wert von val in StyleAdapter.getView() .

    
Pooks 01.03.2012, 07:26
quelle

1 Antwort

2

Eigentlich hier habe ich die Erklärung für alles gefunden. Wenn Sie festlegen, dass die Ansicht anklickbar sein soll, wird der Klick konsumiert und nicht an den Container weitergegeben.

Somit deaktiviert convertView.setClickable(true) tatsächlich die Klicks.

    
Boris Strandjev 22.06.2015, 15:35
quelle

Tags und Links