Ich habe das folgende DialogFragment aus der Android-Dokumentation erstellt:
Öffentliche Klasse PayBillDialogFragment erweitert DialogFragment {
%Vor%Von einem anderen Fragment (einem ListFragment), wenn eine Zeile der Liste angeklickt wird, sollte das DialogFragment geöffnet werden und nach dem Drücken der positiven Schaltfläche des DialogFragments möchte ich die ausgewählte Zeile des ListFragments entfernen und auch aufrufen können eine Methode zum Ausführen einer Remote-Aktion, die dem Entfernen zugeordnet ist. Ich habe das ListFragment folgendermaßen implementiert:
%Vor%Was ich nicht weiß ist, wie man mit der Aktion nach dem Klick auf den positiven Knopf des DialogFragments umgeht. Kannst du mir helfen?
EDIT: um zu verdeutlichen, das ist der Workflow: Klicken Sie auf die Liste - & gt; zeige das DialogFragment - & gt; Nach dem Klicken auf DialogFragment entfernen Sie das Element aus der Liste.
Sie haben zwei Möglichkeiten, ListFragment
von PayBillDialogFragment
aufzurufen.
Zuerst wird von den Android-Richtlinien empfohlen. Die gesamte Kommunikation läuft über das Hosting Activity
. So erhalten Sie das Hosting Activity
, indem Sie ((HostingActivity)PayBillDialogFragment.getActivity()).deleteItem()
in PayBillDialogFragment.setPositiveButton(onClick())
aufrufen. In HostingActivity.deleteItem()
erhole den aufgeblähten PayBillDialogFragment
und rufe eine delete Methode auf.
Siehe Ссылка
Sekunde . Sie können nur DialogFragment.setTargetFragment()
beim Erstellen des DialogFragment-Objekts und dann innerhalb PayBillDialogFragment.setPositiveButton(onClick())
können Sie PayBillDialogFragment
by DialogFragment.getTargetFragment()
und rufen Sie die Methode delete dort.
Das Listenfragment würde einen Adapter verwenden, um Elemente anzuzeigen. Der Adapter benötigt eine Eingabe in Form einer Sammlung. Was Sie also tun können, ist, wenn der Benutzer die Schaltfläche OK im Dialogfragment drückt und Sie das Listenfragment zurücksenden, können Sie dieses bestimmte Element aus der Sammlung entfernen und den Adapter des Listenfragments erneut mit der geänderten Sammlung festlegen.
Tags und Links android android-dialogfragment android-listfragment