Android: Pasar datos de fragmento hijo a fragmento padre

Necesito pasar algunos datos del fragmento secundario al fragmento padre que podré leer cuando vuelva al fragmento padre. En detalle:

Tengo una FragmentActivity que llama a FragmentParent. De FragmentParent llamo a FragmentChild así:

FragmentChild fragmentChild = new FragmentChild(); FragmentTransaction transaction = getFragmentManager().beginTransaction(); transaction.replace(R.id.frl_view_container, fragmentChild); transaction.addToBackStack(null); ctransaction.commit(); 

En FragmentChild establezco un valor de cadena que necesito pasar de nuevo a FragmentParent y luego regreso a FragmentParent.

 String result = "OK"; getFragmentManager().popBackStack(); 

¿Cuál es la mejor / correcta manera de leer la cadena de resultados en FragmentParent?

Puede utilizar setTargetFragment y onActivityResult para lograr esto.

Establezca la instancia de FragmentParent como fragmento de destino en la instancia de FragmentChild ie

 FragmentChild fragmentChild = new FragmentChild(); fragmentChild.setTargetFragment(this, FRAGMENT_CODE); FragmentTransaction transaction = getFragmentManager().beginTransaction(); transaction.replace(R.id.frl_view_container, fragmentChild); transaction.addToBackStack(null); transaction.commit(); 

En FragmentChild, dondequiera que esté invocando el popBackStack, invoque onActivityResult en el Fragmento de destino establecido. Utilice el paquete para transmitir datos adicionales.

 Intent intent = new Intent(); intent.putExtra(FRAGMENT_KEY, "Ok"); getTargetFragment().onActivityResult(getTargetRequestCode(), Activity.RESULT_OK, intent); getFragmentManager().popBackStack(); 

De vuelta en FragmentParent, anule el método onActivityResult predeterminado.

 public void onActivityResult(int requestCode, int resultCode, Intent data) { if(requestCode == FRAGMENT_CODE && resultCode == Activity.RESULT_OK) { if(data != null) { String value = data.getStringExtra(FRAGMENT_KEY); if(value != null) { Log.v(TAG, "Data passed from Child fragment = " + value); } } } } 
  • Cómo abrir la página de fragmentos, cuando se presiona una notificación en android
  • ¿Cómo puedo añadir un fragmento a un ViewPager? AddView bloquea mi aplicación
  • Barra de Acción de Android Sherlock con Tabs
  • Cambiando dinámicamente los fragmentos dentro de un host de fichas de fragmentos?
  • Receptor de radiodifusión dinámica en fragmento
  • Custom ViewPager dentro de ObservableScrollView no se mide correctamente la altura
  • Fragmentos Tipos incompatibles
  • Android + ListFragment con una jerarquía de vista personalizada
  • Cómo deshabilitar el desplazamiento de ViewPager usando android-support-v4.jar en android
  • ViewPager + FragmentStatePagerAdapter: ViewPager deja de funcionar cuando cambia la orientación de la pantalla
  • Agregar diálogo de progreso a la barra de acción sherlock from sherlock fragment
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.