móviles - manual de programacion android pdf
¿Cuáles son las diferencias entre actividad y fragmento? (7)
Fragmento es parte de una actividad, que aporta su propia interfaz de usuario a esa actividad. Fragmento se puede pensar como una actividad secundaria, mientras que la pantalla completa con la que el usuario interactúa se denomina actividad. Una actividad puede contener múltiples fragmentos. Fragmento son en su mayoría una parte de una actividad.
Una actividad puede contener 0 o múltiples fragmentos en función del tamaño de la pantalla. Un fragmento se puede reutilizar en actividades múltiples, por lo que actúa como un componente reutilizable en actividades.
Un fragmento no puede existir de forma independiente. Debe ser siempre parte de una actividad mientras que la actividad puede existir sin ningún fragmento en ella.
Según mi investigación, hay una diferencia significativa en el concepto de backstack y cómo existen:
Actividad::
Cuando se coloca una
activity
en la partebackstack
de lasactivities
el usuario puede volver a la actividad anterior presionando el botónback
.Activity
puede existir de forma independiente.
Fragmento::
Cuando se coloca un
fragment
en la actividad, debemos solicitar que se guarde la instancia llamando aaddToBackstack()
durante latransaction
fragment
.Fragment
tiene que vivir dentro de laactivity
¿Hay alguna diferencia adicional?
El punto de entrada de la aplicación Android es Actividad . La actividad representa una pantalla y proporciona una interfaz de usuario y comportamiento para manejar los eventos de entrada. Se envía una solicitud en forma de intención para comenzar cualquier actividad en la aplicación, lo que significa que las aplicaciones de Android tienen múltiples puntos de entrada. El sistema Android lee la configuración de las actividades y las crea cuando se realiza una solicitud de actividades. El sistema llama a los métodos de devolución de llamada que le permiten implementar cierto comportamiento en diferentes puntos en el ciclo de vida de la actividad.
Los fragmentos, por otro lado, no pueden iniciarse enviando una solicitud al sistema. Ellos son parte de la Actividad. Fragmentos le permite dividir la actividad en componentes más pequeños para que pueda reutilizarlos y usar fragmentos, puede implementar una tarea con flujo de múltiples tareas secundarias con una sola actividad. Fragment tiene un ciclo de vida con el que puede implementar el comportamiento cuando Fragment se encuentra en diferentes estados de su ciclo de vida.
Esas son dos cosas completamente diferentes:
Una actividad es un componente de aplicación que proporciona una pantalla con la que los usuarios pueden interactuar para hacer algo. Más detalles: http://developer.android.com/guide/components/activities.html
Mientras que un Fragmento representa un comportamiento o una parte de la interfaz de usuario en una Actividad. http://developer.android.com/guide/components/fragments.html
La actividad es la interfaz de usuario de una aplicación a través de la cual el usuario puede interactuar y Fragmento es la parte de la actividad, es una actividad dentro de la actividad secundaria que tiene su propio ciclo de vida que corre paralelo al ciclo de vida de las actividades.
Activity LifeCycle Fragment LifeCycle
onCreate() onAttach()
| |
onStart()______onRestart() onCreate()
| | |
onResume() | onCreateView()
| | |
onPause() | onActivityCreated()
| | |
onStop()__________| onStart()
| |
onDestroy() onResume()
|
onPause()
|
onStop()
|
onDestroyView()
|
onDestroy()
|
onDetach()
Principales diferencias entre Activity
y Fragment
- La actividad es un componente de aplicación que proporciona una interfaz de usuario donde el usuario puede realizar la intepretación. Fragmento es una parte de una actividad, que contribuye con su propia interfaz de usuario a esa actividad.
- Para la tableta o si el móvil está en el paisaje, entonces usando el fragmento podemos mostrar dos listas como lista completa para mostrar el nombre del estado y otra lista mostrará la descripción del estado en una sola actividad, pero al usar la actividad no podemos hacer lo mismo.
- La actividad no depende del fragmento. Pero el Fragmento depende de la Actividad, no puede existir independientemente.
- sin usar un fragmento en la Actividad, no podemos crear una interfaz de usuario de paneles múltiples, pero al usar múltiples fragmentos en una sola actividad, podemos crear una IU de paneles múltiples.
- Si creamos un proyecto usando solo Actividad, entonces es difícil de administrar, pero si usamos fragmentos, entonces la estructura del proyecto será buena y podemos manejarla fácilmente.
- Una actividad puede contener 0 o múltiples fragmentos. Un fragmento se puede reutilizar en actividades múltiples, por lo que actúa como un componente reutilizable en actividades.
- La actividad tiene su propio ciclo de vida, pero el fragmento tiene su propio ciclo de vida.
- Para la Actividad debemos mencionar en Manifiesto pero para el fragmento no es necesario.
Según la documentación del desarrollador de Android, diferencia entre fragmento y actividad en su ciclo de vida.
Enlace de documento http://developer.android.com/guide/components/fragments.html#Lifecycle
La diferencia más significativa en el ciclo de vida entre una actividad y un fragmento es cómo uno se almacena en su respectiva pila de respaldo. Una actividad se coloca en una pila de actividades que el sistema administra cuando se detiene, de manera predeterminada (para que el usuario pueda volver a ella con el botón Atrás, como se explica en Tareas y Apilar Atrás). Sin embargo, un fragmento se coloca en una pila posterior administrada por la actividad del host solo cuando se solicita explícitamente que la instancia se guarde llamando a addToBackStack () durante una transacción que elimina el fragmento.
De lo contrario, la gestión del ciclo de vida del fragmento es muy similar a la gestión del ciclo de vida de la actividad. Por lo tanto, las mismas prácticas para administrar el ciclo de vida de la actividad también se aplican a los fragmentos. Sin embargo, lo que también necesita comprender es cómo la vida de la actividad afecta la vida del fragmento.
y para diseños de paneles múltiples, debe usar fragment
que no puede lograr con la activity
.
Actividad
1. Las actividades son uno de los pilares fundamentales de las aplicaciones en la plataforma Android. Sirven como el punto de entrada para la interacción de un usuario con una aplicación y también son fundamentales para la forma en que un usuario navega dentro de una aplicación o entre aplicaciones.
2. Los métodos del ciclo de vida son alojados por el sistema operativo.
3. Ciclo de vida de la actividad
Fragmentos
1. Un Fragmento representa un comportamiento o una parte de la interfaz de usuario en una Actividad. Puede combinar múltiples fragmentos en una sola actividad para construir una interfaz de usuario de paneles múltiples y reutilizar un fragmento en múltiples actividades. Puede pensar en un fragmento como una sección modular de una actividad, que tiene su propio ciclo de vida, recibe sus propios eventos de entrada y que puede agregar o eliminar mientras se ejecuta la actividad.
2. Los métodos del ciclo de vida son alojados por la actividad de alojamiento.
3. Ciclo de vida de un fragmento