Diferencia entre revisiones de «Usuario:ManuelRomero/Android/Fragement/Conceptos»

De WikiEducator
Saltar a: navegación, buscar
Línea 2: Línea 2:
 
{{:Usuario:ManuelRomero/Android/Fragment/nav}}
 
{{:Usuario:ManuelRomero/Android/Fragment/nav}}
 
<br>
 
<br>
==La clase Fragment===
+
Referencias
*Un fragment es una parte de una actividad, con su propia interfaz de usuario y comportamiento que posteriormente se puede.
+
*http://www.sgoliver.net/blog/?p=3496
 +
*http://developer.android.com/reference/android/app/Fragment.html
 +
 
 +
==La clase Fragment==
 +
*Un fragment es una parte de una actividad, con su propia interfaz de usuario y comportamiento.
 
*De este modo podemos tener una actividad costruida a partir de uno o varios '''''Fragment'''''
 
*De este modo podemos tener una actividad costruida a partir de uno o varios '''''Fragment'''''
 
*Por otro lado podemos usar  el mismo '''''Fragment''''' para asignarlo a diferentes  '''''Activity'''''
 
*Por otro lado podemos usar  el mismo '''''Fragment''''' para asignarlo a diferentes  '''''Activity'''''
 +
*En la figura tenemos una app con dos '''''Activity''''', y otra app con una única '''''Activity''''' que contiene dos '''''Fragment'''''
 
[[Image:fragment1.png]]
 
[[Image:fragment1.png]]
 
==Herencia==
 
==Herencia==
 
La clase '''''Fragment''''' hereda directamente de '''''Object''''' como podemos ver en la imagen
 
La clase '''''Fragment''''' hereda directamente de '''''Object''''' como podemos ver en la imagen
 
[[Imagen:claseFragment.png]]
 
[[Imagen:claseFragment.png]]
 +
===Haciendo un fragment===
 +
*Todo fragmente ha de tener asociado un layout y una clase java
 +
*Un Fragment tiene su propio ciclo de vida que conviene conocer
 +
*Un '''''Fragmente''''' no se puede ejecutar de forma independiente; Para ser ejecutado en una app  siempre pertenecerá a una '''''Activity'''''.
 +
*Su ejecución estará ligada a la ejecución de la '''''Activity''''', pero tiene su propio ciclo de vida.
 +
*hay una serie de métodos que conviene conocer:
 +
;onAttach
 +
:Llamado una vez que el '''''Fragment''''' es asociado a la '''''Activity'''''
 +
onAttach(Activity)
 +
;onCreate
 +
:Invocado para crear el '''''Fragment''''' dentro de nuestra app.
 +
    onCreate(Bundle)
 +
;onCreateView
 +
:Crea la UI de usuario correspondiente a este Fragment y lo retorna para que forme parte de la UI de la Activity de la que depende
 +
onCreateView(LayoutInflater, ViewGroup, Bundle)
 +
<!-- MRM Falta de traducir y entender bien
 +
onActivityCreated(Bundle) tells the fragment that its activity has completed its own Activity.onCreate().
 +
onViewStateRestored(Bundle) tells the fragment that all of the saved state of its view hierarchy has been restored.
 +
onStart() makes the fragment visible to the user (based on its containing activity being started).
 +
onResume() makes the fragment interacting with the user (based on its containing activity being resumed).
 +
 +
As a fragment is no longer being used, it goes through a reverse series of callbacks:
 +
 +
    onPause() fragment is no longer interacting with the user either because its activity is being paused or a fragment operation is modifying it in the activity.
 +
    onStop() fragment is no longer visible to the user either because its activity is being stopped or a fragment operation is modifying it in the activity.
 +
    onDestroyView() allows the fragment to clean up resources associated with its View.
 +
    onDestroy() called to do final cleanup of the fragment's state.
 +
    onDetach() called immediately prior to the fragment no longer being associated with its activity.
 +
-->

Revisión de 11:50 16 mar 2014

Road Works.svg Trabajo en proceso, espera cambios frecuentes. Tu ayuda y retroalimentación son bienvenidos.
Ver página de charlas.
Road Works.svg




Referencias

La clase Fragment

  • Un fragment es una parte de una actividad, con su propia interfaz de usuario y comportamiento.
  • De este modo podemos tener una actividad costruida a partir de uno o varios Fragment
  • Por otro lado podemos usar el mismo Fragment para asignarlo a diferentes Activity
  • En la figura tenemos una app con dos Activity, y otra app con una única Activity que contiene dos Fragment

Fragment1.png

Herencia

La clase Fragment hereda directamente de Object como podemos ver en la imagen ClaseFragment.png

Haciendo un fragment

  • Todo fragmente ha de tener asociado un layout y una clase java
  • Un Fragment tiene su propio ciclo de vida que conviene conocer
  • Un Fragmente no se puede ejecutar de forma independiente; Para ser ejecutado en una app siempre pertenecerá a una Activity.
  • Su ejecución estará ligada a la ejecución de la Activity, pero tiene su propio ciclo de vida.
  • hay una serie de métodos que conviene conocer:
onAttach
Llamado una vez que el Fragment es asociado a la Activity
onAttach(Activity) 
onCreate
Invocado para crear el Fragment dentro de nuestra app.
   onCreate(Bundle)
onCreateView
Crea la UI de usuario correspondiente a este Fragment y lo retorna para que forme parte de la UI de la Activity de la que depende
onCreateView(LayoutInflater, ViewGroup, Bundle)