Ich verwende RecyclerView
, um einen Text aufzulisten, und jetzt möchte ich es so einrichten, dass, wenn der Benutzer auf Text klickt, ein benutzerdefiniertes Benachrichtigungsdialogfeld erscheint.
Ich habe das bisher versucht, bekomme aber eine NullPointerException; Was könnte hier falsch sein?
%Vor%Ich vergaß die Initialisierung meines Kontextes
context = itemView.getContext ();
Dies ist nicht die Antwort auf Ihre Anfrage, sondern die bessere Lösung für dieses Szenario.
Verwenden Sie Rückrufmethoden.
In Ihrer Aktivität:
Dies wird die Schnittstelle implementieren, die wir in unserem Adapter
haben. In diesem Beispiel wird es aufgerufen, wenn der Benutzer auf ein Element in RecyclerView
klickt.
In Ihrem Adapter:
In der Aktivität haben wir unser Adapter
initiiert und dies als Argument an den Konstruktor übergeben. Dies wird unsere Schnittstelle für unsere Rückrufmethode initiieren. Sie können sehen, dass wir unsere Callback-Methode für Benutzerklicks verwenden.
Höflichkeit: Call Activity-Methode vom Adapter
Nicht direkt auf die Frage bezogen, obwohl ich dich bitte: NICHT auf ClickListener-s innerhalb Adapter setzen!
So sollte es gemacht werden:
%Vor%Ich hoffe, meine Antworten helfen jemandem, einen besseren Code zu schreiben:)
Schreiben Sie diesen Code:
%Vor%statt
%Vor%(oder)
%Vor%Hoffe, das hilft.
Happy Coding:)
Tags und Links android android-recyclerview android-alertdialog