Frage

Ich versuche, ein Problem anzugehen, das anscheinend viele Android-Entwickler haben, wie man Listen mit nicht-Liste-Daten in einem großen Scan-Bereich durchmischt.

Das Modell, das ich im Sinn habe, ist der Bildschirm für eine einzelne App auf dem Markt. Sie haben eine große Beschreibung, eine Liste einiger faul geladener Kommentare und dann einige einzelne Elemente, die unterschiedliche Dinge tun, z.

Nachahmung dieses Ansatzes scheint extrem schwer zu sein. Ich habe genügend Antworten und Mailing -List -Beiträge gelesen, um zu wissen, dass sie keine Liste in eine ScrollView einfügen, aber ich möchte den gleichen Effekt, ohne AddHeader () und Addfoter () mit sehr komplexen Header- und Fußzeilenansichten zu verwenden.

Ich habe versucht, einen Linearlayout zu verwenden, den ich selbst mit Ansichten aufbewahre, aber ich kann nicht die angenehmen Klickeffekte erhalten, die Standardlistenelemente haben (orangefarbener Hintergrund, weiß für lange Klicken usw.).

Was kann ich tun?

War es hilfreich?

Lösung

Schauen Sie sich meine an MergeAdapter, das für solche Szenarien ausgelegt ist.

Andere Tipps

Warum nicht einen Header verwenden? Es ist einfach. Definieren Sie den Header -Inhalt in einem separaten Layout. Ihr Aktivitätslayout enthält nur das ListView das wollen Sie unten. Keine Bildlaufansicht!

Dann ruf an

View headerView = getLayoutInflater().inflate(R.layout.header_layout, null);
ListView listView = (ListView) findViewById(R.id.my_list_view);
listView.addHeaderView(headerView, null, false);   

Es ist entscheidend, diese Form von zu bezeichnen addHeaderView so dass der Header deaktiviert ist. Ansonsten kann es ausgewählt werden, was völlig komisch aussieht.

Marks Beispiel würde funktionieren. Grundsätzlich benötigen Sie einen Adapter mit verschiedenen Ansichtstypen. Ein weiteres schönes Beispiel isthttp://jsharkey.org/blog/2008/08/18/Separating-lists-with-header-in-android-09/Das könnte besser funktionieren als Mark, weil Sie Separatoren haben und Dinge gruppieren möchten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top