Les Fragments

Preview:

DESCRIPTION

Présentation élaborée par M. Ala Eddine Zoghlami dans le cadre des sessions de Lightning Talks à l'Orange Developer Center.

Citation preview

1

Les fragments

Présenté par :Zoghlami Ala eddine

2

Plan

Introduction

Utilité

Cycle de vie

Compatibilité

Gestion de fragments

Composants à base de fragments

Conclusion

3

Introduction

C'est quoi un fragment ?

Fragment Vue Activité

4

Utilité

Application basée sur les

fragments

Smartphone

Tablette

TV

5

Utilité

6

Cycle de Vie

7

Cycle de vie

Le cycle de vie d'un fragment est étroitement lié à l'activité à laquelle il est rattaché

Par exemple si une activité reçoit enPause() chaque fragment associés reçoit aussi enPause

Il existe d'autres méthodes « callback » pour le fragment telles que :

OnAttach() : Appelée quand le fragment est attaché à une activité

OncreateView : Appelée pour créer une vue associé au fragment

OnActivityCreated() : Appelée quand la méthode onCreate()

est retourné

OnDetach() : Appelée quand le fragment est détaché

8

Compatibilité

Les Fragments sont introduits depuis la version 3.0 ( API 11)

les version inférieures tel que 2.3 ne sont pas supportées

La solution est d'utiliser la bibliothèque de compatibilité « Appcompat »

Notre classe fragment étendra donc android.support.v4.app.Fragment

9

Gestion des fragmentsfragmentManager

Pour gérer les fragments , on a eu recourt au gestionnaire de fragment « FragmentManager »

Pour récupérer le fragment manager on appele la methode getFragmentManager()

Si on a un deuxième niveau de fragment ( Fragment dans un autre) on utilise getChildFragmentManager()

Si on est entrain d'utiliser la bibliothèque appcompat on utilise getSupportFragmentManager

10

Gestion des fragmentsBackStack

La pile de retour « BackStack » est un composant qui permet de simuler la fonction de retour connue dans les Activités pour les fragment

Pour ajouter un fragment à la « BackStack » il suffit d'ajouter

.addToBackstack() lors de la Transaction

11

Gestion des fragmentsTransaction

Une transaction est le faite d'ajouter, remplacer ou supprimer un fragment existant

On peut spécifier des animation lors de la Transaction avec

setCustomAnimations(int enter, int exit)

Remplacer le fragment courant par newFragment dans fragment_container Le fragment est ajouté à la backStack

12

Composants à base de FragmentsViewPager

Un viewPager est un widget qui présente des vue ou on peut naviguer avec le « swipe »

Un viewPager utilise un « Adapter » qu'on doit implémenté à part et qui fait appel à nos fragments

On peut associer des « Tabs » à notre viewPager ceci augmentera l’expérience utilisateur , car deux possibilités de navigation sont offertes

13

Composants à base de FragmentsViewPager + tabs

Active la mode Navigation Tabs

Ajout des Tabs

14

Composants à base de FragmentsViewPager + tabs

Pour assurer le bon fonctionnement de ce widget on doit faire de sorte que le ViewPager contrôle les tabs et vice versa

Dans notre Adapter :

15

Composants à base de FragmentsViewPager + Indicator

Pour améliorer votre viewPager , utilisez un indicateur

Il existe une Bibliothèque « viewPagerIndicator » développé par « Jake Wharton » qui vous permet d'ajouter un indicateur facilement il suffit de :

Ajouter la bibliothèque à votre projet

Déclarer le composant dans votre fichier xml

Associer l'indicateur au viewPager

16

Netographie

http://developer.android.com/guide/components/fragments

http://fr.openclassrooms.com/informatique/cours/aller-plus-loin-dans-le-developpement-android/fragment

https://github.com/JakeWharton/Android-ViewPagerIndicator

17

Conclusion

L'utilisation des fragments est fortement recommandé de nos jours, à fin d'éviter les problèmes des différents tailles d'affichage et d'augmenter l’expérience utilisateur

18

Merci pour votre Attention !

Recommended