RecyclerView ItemClick Position aus ViewAdapter an Fragment übergeben ?

  • Hallo,


    habe mir schon viele Lösungen speziell in Stackoverflow angesehen. Leider bekomme ich keine bei mir zum Laufen.

    Zu meinem Projekt: In der MainActivity wird das Fragment gestartet. Im Fragment lese ich eine SQLite DB aus und schreibe über einen ViewAdapter die Daten in eine recyclerView.

    Per Click kennzeichne ich eine Zeile.

    Über einen Buttons der außerhalb der View ist will ich Ändern , Löschen usw. ! Dies soll im Fragment ablaufen, aber ich benötige die Position des Datensatzes. Ich möchte keine Dateiarbeit im Adapter unterbringen sondern nur im Fragment.



    Kann mir jemand helfen und eine Lösung vorschlagen, die bei ihm funktioniert ?


    in Erwartung Wolfgang :)

  • prima , danke !


    Jetzt habe ich gleich das nächste Problem. Ich habe jetzt die Position in der View. Das ist aber noch lange nicht die Position im Daten-Array, da ich ja z.B. den Datensatz löschen will. Mal schauen ..... die Lösung habe ich in Deiner Empfehlung gefunden !!


    Nochmals danke

  • Wieso eigentlich sowas?


    Code
    public ViewAdapter(Context context, ArrayList<DataModell_aufgabenliste> dataModell_aufgabenliste, ArrayList bereich, ArrayList aufgabentyp, ArrayList notiz, ArrayList termin, ArrayList aufgabe_erledigt, ArrayList aufgabenListe_id)


    so viele Listen.

    Erstelle eine Model Kasse mit den Attributen die du brauchst. Da von erstellst du eine Liste und die gibst du dem Adapter.

    Dann brauchst beim löschen auch nur den einen Eintragt in der Liste löschen. Und nicht in allen Listen . OOP

  • Eigentlich hast du das ja auch schon das wird wohl dein

    „ArrayList<DataModell_aufgabenliste> dataModell_aufgabenliste“ sein

    Aber das benutzt du garnicht im Adapter.



    Zitat

    Das ist aber noch lange nicht die Position im Daten-Array, da ich ja z.B. den Datensatz löschen will.


    wo hast du denn ein Array du hast eine Arraylist und kein Array.

  • Genau solch eine gewaltige SQL-Abfrage habe ich aufgelöst. Jede Änderung der Abfrage bereitete mir Kopfschmerzen. Mein Sohn hat mir das zwar alles erklärt, aber in der Komplexität ist es mir zu kompliziert.


  • Es geht nicht um das prinzipielle Verstehen. Man kann das auch einfacher abbilden und schafft somit eine bessere Übersicht und Korrigierbarkeit.


    Ich habe auch jahrelang programmiert (hatte aber auch 6 Jahre Pause), die JAVA-Syntax und im Umgang mit Android im Studio ist für mich total neu. Kann ich denn ein Model aus mehren Tabellen zusammenstellen ?

    Es ist dann schon klar, daß ich diese mit JOIN verbinde !

  • Sorry, das mache ich doch alles, ich habe die Querys nur kürzer gestaltet und richtig, das JOIN entfernt.


    Nochmal meine Frage: Kann ich eine Model Klasse aus mehreren Tabellen aufbauen ? Dann würde ich auch wieder JOIN einsetzen. Die vielen ArrayLists würden auch wegfallen. Hatte ja so angefangen, bin aber irgendwie damit nicht klargekommen, weil ich die eine Tabelle abgebildet hatte, aber nicht die View.

  • Dann zeige mal wie du eine einfache abfrage machst und wie du es in der Instanz einer Klasse Speicherst.


    Zitat

    Sorry, das mache ich doch alles, ich habe die Querys nur kürzer gestaltet und richtig, das JOIN entfernt.

    ja aber wie kommst du vom Cursor auf die AraryList vom Typ deiner DatenKlasse?


    überlege was du im Cursor bekommst wenn du mehrere Tabellen abfragst.

Jetzt mitmachen!

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