Ich habe ein Fragment, das entweder an eine Aktivität oder ein Elternfragment angehängt werden kann. Dieses Fragment hat eine Schnittstelle, die von jedem implementiert werden muss, mit dem es verbunden ist. Für Aktivitäten, das ist ganz einfach:onAttach-Methode zum Anfügen an ein Elternfragment
@Override
public void onAttach(Context context) {
super.onAttach(context);
if (context instanceof Activity){
Activity activity =(Activity) context;
try {
mCallback = (OnMyListener) activity;
} catch (ClassCastException e) {
throw new ClassCastException(activity.toString() +
" must implement OnMyListener");
}
}
}
Ich bin aber nicht in der Lage mCallback
Zuhörer für andere Fragmente zu setzen, dass diese besondere Fragment hosten.
prüfen 'getParentFragment()'. Wenn es einen Nicht-Null-Wert zurückgibt, befinden Sie sich in einem anderen 'Fragment' und Sie können versuchen, das auf Ihr Interface zu übertragen. –
'getParentFragment()' gibt in meinem Fall null zurück. Gibt es eine geeignete Methode, ein Elternfragment hinzuzufügen? Ich blase gerade dieses Fragment in meinem Elternfragment –
auf, wie du Kindfragment auffüllst/nennst? –