Android: Acceder al objeto de actividad del contenedor desde el fragmento usando putExtra?
Estoy construyendo una interfaz de pestañas utilizando la barra de Acción y el fragmento. Necesitaría ayuda en el envío de datos de la actividad del contenedor al fragmento.
Para elaborar, tengo objeto de trabajo en la actividad de contenedor. Y he creado algunas pestañas basadas en la información en el objeto de trabajo (como detalles de la empresa, detalles de la experiencia, etc). Necesito pasar el objeto de trabajo a estos fragmentos para que pueda mostrar información respectiva.
- v4 getFragmentManager con Actividad - Tipos incompatibles
- ViewPager en TabFragment no se carga por segunda vez
- Cómo puedo declarar un fragmento como oculto en un diseño XML
- ¿Es posible llamar manualmente onCreateView en un fragmento?
- Transmisión de datos de un fragmento en una actividad de otra actividad
He creado la actividad del envase y los fragmentos de la lengüeta. Necesitaría un ejemplo de cómo pasar el objeto a través de ellos. No puedo usar intento.putExtra. ¿Puedo acceder al objeto del contenedor principal desde el fragmento?
Cualquier ayuda será apreciada.
Gracias.
- ViewPager dentro de la cuestión del fragmento
- ¿Ciclo de vida de un ViewPager y BackStack reemplazados?
- NullPointerExecption al llamar a un PhoneStateListener en un servicio
- ViewPager + FragmentPagerAdapter dentro de un DialogFragment obtiene "IllegalArgumentException: No se encontró ninguna vista ..."
- Selección de la imagen de la galería con fragmento
- Android.support.v4.app.FragmentPagerAdapter no se puede aplicar a android.app.FragmentManager
- Android Cambio de un diseño normal a un error de diseño de tabulación en los botones de imagen y otros?
- OnCreateView no se llama con Fragment en ViewPager
Realice el método en su actividad, por ejemplo, getJob
que devolverá el objeto Job
y su información
MyActivity extends Activity{ Job mJob; public Job getJob(){ return this.mJob; } }
Entonces en tu Fragmento haz esto:
MyFragment extends Fragment{ @Override public void onActivityCreated(){ super.onActivityCreated(); ((MyActivity)this.getActivity()).getJob(); } }
getActivity
y el método getJob();
Para obtener el objeto
Hay múltiples maneras de lograr esto.
- Hacer una variable
static
para mantener sus datos y acceder a los datos de dentro de los fragmentos – este es el más rápido, pero crea malos patrones de diseño si se utiliza incorrectamente. - Una forma de comunicación
Fragment-to-Fragment communication possible through the parent Activity
se publica aquí: http://developer.android.com/training/basics/fragments/communicating.html Puede utilizar el código de ejemplo para hacer sólo unaActivity - Fragment data send
. - La respuesta mejor votada aquí: ¿ Acceso a la instancia de la actividad de los padres? Menciona
a way to avoid using static data
(1.) y contiene ejemplos de código fuente usandoActivityGroup
"Si necesitas acceder a algunos valores en tu primera actividad sin hacer una referencia estática a ella, podrías considerar poner tus actividades en un ActivityGroup."
Lo que usted elija es su preferencia, estas son sólo algunas opciones!
Edit: No estoy seguro de si el número 3 funcionará con fragmentos, ya que no he probado un método similar a él, el ejemplo es la comunicación actividad-actividad.
- Facebook integración en Android fbconnect enlace roto
- Excepción de bucle de eventos sin tratamiento en el complemento org.eclipse.ui