2017-08-20 16 views
1

Wie ich verstehe, wenn Sie zwischen 2 Fragmente kommunizieren möchten, tun Sie das über die zugrunde liegende Aktivität. Meine 2 Fragmente befinden sich jedoch nicht auf derselben Hierarchieebene, da 1 Fragment innerhalb eines anderen Fragments geöffnet wird.Android: Kommunikation zwischen Fragment und einem anderen Fragment direkt darüber

Wenn ich einen Knopf auf dem überlagernden Fragment anklicke, gibt es eine Möglichkeit, das direkt mit dem Haltefragment zu kommunizieren, ohne den Umweg über die Aktivität zu gehen? Weil das wirklich chaotisch wäre.

auf eine Schaltfläche klicken auf Fragment 1 öffnet Fragment 2 in einem FrameLayout IN Fragment 1. So klingt es wie ein großer Umweg das Fragment 2 Interaktion mit dem darunterliegenden Aktivität zu schicken und dann zu Fragment zurück 1.

Wenn ich verstehen es richtig ist mListener die Aktivität, nicht das Fragment, das das zweite Fragment

@Override 
public void onAttach(Context context) { 
    super.onAttach(context); 
    if (context instanceof OnFragmentInteractionListener) { 
     mListener = (OnFragmentInteractionListener) context; 
    } else { 
     throw new RuntimeException(context.toString() 
       + " must implement OnFragmentInteractionListener"); 
    } 
} 

Antwort

1

persönlich hält, ich habe es durch die Aktivität senden würde. Aber Sie könnten stattdessen einen Nachrichtenbus dafür verwenden.

Verwandte Themen