Listview Übergabe Werte an zweite Activity

  • Hallo,


    ich habe auf meiner Main-Activitiy eine Liste. Jedes Listenelement wird über eine separate list_item.xml "designt".
    Zur Identifikation von Einträgen möchte ich eine eindeutige ID benutzen, um mehr Daten zu dem Eintrag in der zweiten Activity "nachzuladen", aber NICHT alle Daten schon on das Listenelement packen.
    Die Daten werden beim Parsen des JSON-Feeds in einer HashMap abgelegt. (Beispiel aus Internet)


    Fragen:
    Kann ich auf die Daten der HashMap auch in der zweiten Activty zugreifen?
    Wie kann ich anhand der position des Elements in der Liste alle Daten aus der HashMap an die zweite Activity übergeben?


    main_activity.xml



    list_item.xml


    detail_activity.xml



    Lesen der Einträge aus JSON-Feed


    ListAdapter füllen



  • 1) Nein.
    2) Gar nicht.


    Android/Java arbeitet an dieser Stelle nicht mit Referenzen sondern mit Kopien.
    Die HashMap oder deren Inhalte zu kopieren wäre ein systematischer Selbstmord.


    Statt die HashMap im Speicher zu halten gehört die lokal gespeichert (beispielsweise in eine SQLite Datenbank) und dann in den betreffenden Activities/Fragments ausgelesen.
    Zu diesem Zweck kannst du via Intent.putExtra() Deine ID des gewählten Eintrags an die zweite Activity übergeben, welche diese ID zum gefilterten Laden der Daten verwendet.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!