Ich habe Elternfragment und Dialogfragment in meiner Anwendung. Wenn Sie auf eine Schaltfläche klicken, öffnet Parent Fragment Dialog Fragment. Dies ist meine ParentFragment-Klasse.getTargetFragment Rückgabe Null
public class ParentFragment extends Fragment {
........
........
public class ButtonClickListener implements View.OnClickListener{
@Override
public void onClick(View v) {
FragmentTransaction ft = getFragmentManager().beginTransaction();
Fragment prev = getFragmentManager().findFragmentByTag("dialog");
if (prev != null) {
ft.remove(prev);
}
MyDialogFragment newFragment = new MyDialogFragment();
newFragment.setTargetFragment(ParentFragment.this, 0);
newFragment.show(getFragmentManager(), "dialog");
}
}
}
Dies ist MyDialogFragment Klasse
public class MyDialogFragment extends DialogFragment {
..........
public MyDialogFragment() {
parentFragment = (ParentFragment)getTargetFragment();
}
...........
...........
}
Wenn getTargetFragment in MyDialogFragment Klasse immer null zurück.
Versuchen Sie es mit indFragmentByTag wie 'getFragmentManager(). FindFragmentByTag (parentFragmentTag);' –