tutorial studio inside fragments example change activity android android-fragments android-nested-fragment

studio - fragment example android



getParentFragment devuelve nulo (4)

Tengo un Fragment que tiene un FrameLayout . Este primer fragmento (A) carga dentro de su Framelayout otro fragmento (B). Cuando llamo a getParentFragment desde el fragmento interno (B), obtengo null . ¿Cómo debe usarse este método de forma adecuada?



Enfrenté el mismo problema y solucioné los problemas alojando el segundo fragmento en tu fragmento principal con getChildFragmentManager() entonces no obtendrás el valor nulo ...

Fragmento principal

SignUpFragment signUpFragment = new SignUpFragment(); getActivity().getSupportFragmentManager().beginTransaction().replace(R.id.contentPanel, signUpFragment) .addToBackStack(null).commit();

Fragmento de niño: lo que he usado es un diálogo

HospitalCardDialog hospitalCardDialog = new HospitalCardDialog(); hospitalCardDialog.show(getChildFragmentManager(), "");


Lo único que ayudó fue que, al crear el adaptador, use getChildFragmentManager() .

Si no está usando el adaptador, simplemente use getChildFragmentManager() cuando realice transacciones.

No se recomienda setTargetFragment() , ya que da errores en moveState() de fragmento (porque los fragmentos deben estar vinculados a FragmentManager)


getParentFragment () se introdujo en el nivel 17 de API (Android 4.2). Android 4.2 introdujo la idea de fragmentos anidados (fragmentos que contienen otros fragmentos). Llamar a esto da como resultado nulo si el fragmento tiene un padre que es una Actividad.

Echa un vistazo a this .

Si está utilizando la biblioteca de soporte, entonces puede usar getParent (), puede ser que necesite usar getChildFragmentManager () mientras realiza la transacción de fragmento. Mira this