Fokus-Steuerelement in einem ListView
Kontext:
Ich möchte eine ListView, die nicht den Fokus erhalten (z.B. nicht
markieren Sie die Zeile, wenn der Benutzer Sie berührt). Doch jede Zeile widget hat eine eigene
OnClickListener.
Hier ist, was ich fest im layout-xml:
android:choiceMode="none"
android:focusableInTouchMode="false"
android:focusable="false"
ListView Verhalten immer noch genau das gleiche.
Könnte mir bitte jemand erklären,
- Die Wechselbeziehung zwischen den drei
- Was ist der richtige Weg, um erstellen Sie eine ListView nicht den Fokus erhalten?
TIA.
Hi Quintin. Ich bin mit dem gleichen problem. Haben Sie die Antwort gefunden?
zwei beste Lösung stackoverflow.com/questions/2098558/...
zwei beste Lösung stackoverflow.com/questions/2098558/...
InformationsquelleAutor yanchenko | 2009-02-21
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Liste den Fokus erhält, ist anders als die gewählte Zeile nicht hervorheben. Die Liste erhält den Fokus, wenn ein Benutzer in. Am besten ein ListView-Steuerelement tun können, ist zu berichten, eine
int
für das, was der Benutzer ausgewählt hat. Ich bin mir nicht sicher, wie Sie jede Zeile widget hat eine eigene ClickListener. Es gibt keine Zeile, die widgets, die ich mir bewusst bin. DieonListItemClick
gehört zu der ListView.Ich nicht in der Lage gewesen, um es herauszufinden, aber zwischen
android:listSelector
undandroid:background
und die Anpassung der alpha-Kanäle, ich vermute es wäre ein Weg, um eine Auswahl zu treffen die genauso Aussehen wie nicht-ausgewählten Zeile.android:listSelector="#8fff"
macht es so, nur der Vordergrund ändert sich die Auswahl.Scheint es bei android wählt die nicht-ausgewählten Vordergrund-auf seine eigenen, was zu machen ist schwer. Ich hoffe, das hilft.
InformationsquelleAutor Will
Obwohl Sie in der angegebenen xml-könnten Sie versuchen, Angabe in code als auch. Ich bin mir zwar nicht sicher, können Sie eine Liste, um nicht den Fokus erhalten und haben noch die Liste Scrollbar und es ist anklickbar.
nach Ihrem setContentView...
Könnten Sie versuchen, und zu Erben, aus der Sicht, wie gut und fügen Sie dann ein wenig debugging-code in der Zwischenzeit zu helfen, finden Sie, wenn Sie die Liste tatsächlich den Fokus hat.
android:focusableInTouchMode="false"
im XML-würde es nicht stoppen, Fokussierung/scrollen zur Laufzeit. Nur aufrufenlistView.setFocusableInTouchMode(false);
im code gearbeitet. Magic!InformationsquelleAutor Quintin Robinson
Kann Sie tun, mit einer RadioButton-das ist ausgewählt, wenn Benutzer berührt eine Zeile auf der Liste?
Folgenden ist ein Auszug aus meinem eigenen code.
Prost!
InformationsquelleAutor SSG