Gutes Beispiel für EventCallbacks (im Zusammenhang mit einem Dialog(Fragment))?

  • Antworten:1
Frank Rudolf
  • Forum-Beiträge: 215

02.02.2016, 11:44:57 via Website

Ich möchte, dass bei einem Ereignis in meinem DialogFragment die dazugehörige Activity informiert wird und etwas macht.

Wie man dies macht, wird grob hier beschrieben: http://developer.android.com/guide/components/fragments.html#EventCallbacks

Allerdings habe ich bei diesem Beispiel einige Verständnisprobleme, die vor allem daher rühern, dass ich zu wenig vom Kontext des dort gezeigten Codes sehe (wie sind diese CodeSchnipsel in das Gesamtprojekt integriert etc.?).

Meine Suche im Internet (zB nach "fragment android callback event interface") brachte nicht viel.

Kennt jemand eine Seite mit einem gut nachvollziehbaren Beispiel (am liebsten mit ein paar Bildern)?

— geändert am 02.02.2016, 11:45:34

Antworten
Rafael K.
  • Forum-Beiträge: 2.359

02.02.2016, 15:09:25 via Website

Naja das Beispiel dort ist doch recht selbsterklärend.

Deine Activity implementiert ein Interface.
Sobald das DialogFragment erzeugt wird, gibt der Lifecycle vor, dass irgendwann onAttach() mit der Activity aufgerufen wird, der das Fragment gehört.
Dabei speicherst Du dir eine Referenz auf die Activity als Listener.

Wichtig ist, dass diese Lösung auch funktioniert, NACHDEM die Activity und der Dialog (z.B. nach Drehung des Geräts) neu erzeugt wurden.
Würdest Du den Listener im Konstruktor o.ä. übergeben, ist er nach diesem Neu-Erzeugen "null".

Frank Rudolf

Antworten