2016-09-02 1 views
0

Ich habe eine Listview in einer Fragment, und wenn ich auf ein Element klicken, wird eine neue Fragment angezeigt.Machen Sie eine Listview programmgesteuert nur wählbar

Das Problem ist, dass ich für einige Millisekunden das Element durch die Berührung ausgewählt sehen kann. Gibt es eine Möglichkeit, diese Listview nur programmgesteuert auswählbar zu machen? Zum Beispiel, wenn ich zum Fragment zurückkehre und etwas verbundenes läuft (ich weiß bereits, wie man ein Einzelteil in Java auswählt, ich muss nur wissen, wie man Berührung klickt).

Der Artikel ist mit einem Selektor farbig und die Listview s sind im Auswahlmodus einzeln eingestellt.

Antwort

0

Eine Möglichkeit, dies zu tun wäre, um die ontouchListener() des Fragments zu implementieren, und schreiben Sie die onTouch() Methode mit einem einfachen: return false das Ereignis zu konsumieren.

0

Sie können dies ganz einfach erreichen. Die zwei Möglichkeiten, die oben auf meinem Kopf sind, sind:

  1. Touch in der Liste deaktivieren.
  2. Setzen Sie Ihre Listview in einer RelativeLayout (rootLayout) in der RelativeLayout (rootLayout) erste Element sollte Ihre Listview und der zweite kann eine andere RelativeLayout (coverLyt) mit der Höhe sein und Breite wie match_parent und anklickbare Satz auf true gesetzt. Dadurch wird das CoverLyt die Berührungsereignisse anstelle von ListView nehmen. Wenn Sie möchten, dass die listView-Berührungsereignisse funktionieren, legen Sie die Sichtbarkeit von coverLyt fest und sichtbar, wenn umgekehrt.
Verwandte Themen