Programmation Android Les listes

Slides:



Advertisements
Présentations similaires
ListView et Adapter O.Legrand G. Seront. ListView & GridView
Advertisements

Le débogage Semaine 12 Version A15. Plan de leçon - Débogage  Commentaire javadoc  Définition  Fonctionnement  Point d’arrêt  Exécution  Contrôler.
Commerce électronique Automne  Introduction  Création du panier d’achats  Migration du panier d’achats  Conclusion.
GCstar Gestionnaire de collections personnelles Christian Jodar (Tian)
Le diaporama Tutoriel de base pour Vidéoporama réalisé par Jacques pour G3L sous licence.
L'image: Le codage des images BacPro SEN Lycée Condorcet.
Les systèmes d'information 1- Une pratique quotidienne 2- Les données 3- Approche conceptuelle 4- Notion de serveur 5- Conception d'un système d'information.
SITC 10 rue de la libération Bâtiment C Neuilly-sur-Marne Processus création et envoi de newsletter changement du mot de passe.
WIKITTY Base de données orientée documents et API de persistance pour Java.
Interface sur laquelle on arrive lorsqu’on atteint le site Tous les champs ci- dessous sont supprimés Liste des clients disponibles Liste des serveurs.
Cours Initiation aux Bases De Données
Exploitation de logiciels :
Rechercher des articles et des sites web
Les tableaux différencier les variables simples des variables indicées (ordonnées et numérotées) un identificateur unique désigne un ensemble, une collection.
Modèle objet : les classes
Environnement de développement des BD
Environnement du développement de BD ORACLE REPORTS 10g
DOC MYCK : Programmation
Utiliser le dossier Mon EBSCOhost
10 - CREATION D’UNE ACTION
Se connecter toujours depuis TecfaMoodle
Sous menu de l’application «micro» (‘IHM’)
Information et Système d’Information
Javadoc et débogueur Semaine 03 Version A17.
Collecte de données CAPI
Principes de programmation (suite)
Les fonctions.
Les bases de données et le modèle relationnel
Interaction avec une base de données
Chapitre 12 Surveillance des ressources et des performances
Développement JAVA pour plateforme ANDROID
HTML & css.
Langages de programmation TP10
Développement Mobile : Android
Les interfaces en PHP.
Chapitre 4 Communication entre activités, Renvoyer et récupérer les données, ListViews et Adapters Azyat Abdelilah ENSAT GSEA3 2017/2018.
Windows Server 2012 Objectifs
Programmation Android Debugger ses applications
Modélisation avec UML 2.0 Partie II Diagramme de classes.
Programmation Orientée Objet C# El Akel Bouchra ISMONTIC Tanger 2013/2014.
Programmation Android Communication entre composants
Type Concret – Type Abstrait
Programmation Android Bases De Données, SQL-lite
Introduction Moodle est un système de gestion de cours, conçu pour aider les enseignants à créer des cours en ligne et de gérer les interactions virtuelles.
Calcul Scientifique Initiation à SCILB
ACP Analyse en Composantes Principales
Chapitre2: SGBD et Datawarehouse. On pourrait se demander pourquoi ne pas utiliser un SGBD pour réaliser cette structure d'informatique décisionnelle.
Diagrammes UML 420-KE2-LG.
Programmation Android Première application Android
En savoir plus Microsoft Actualités SharePoint
Programmation Android GUI (widgets) et ressources
STS Web Services libres Créer un service libre
Comment personnaliser Microsoft SharePoint Site web
STS Web Services libres Gérer les services libres
Les structures de base Listes chainées. Listes Les listes(similaire aux tableaux) sont des structures informatiques qui permettent de garder en mémoire.
Créer un diaporama avec Open Office Impress
DESIGN PATTERN BUILDER KADRI LOUBNA CHARMATI SEWSEN.
Transition vers l’assignation automatique des stages à la résidence
PRESENTATION ACCESS Editeur : Microsoft Environnement Windows (SE)
Module 4 – Les Dashboards
Principes de programmation (suite)
Tableaux Cours 06.
STREAMS (et fichiers).
Lecture/Écriture de fichiers (I/O)
Definition de html sommaire. Présentation de html, css et javascript Module 1.
Structure de données Les listes.
Contenu Systèmes de test parallèles Multithreading Synchronisation
ScienceDirect Guide d’utilisation de la base de données : ScienceDirect Pr R. EL OUAHBI.
DONNÉE DE BASE QM Manuel de formation. Agenda 2  Introduction  Objectif de la formation  Données de base QM: Caractéristique de contrôle Catalogue.
Support de formation Administrateur Compétences
Transcription de la présentation:

Programmation Android Les listes Jérémy VINET IE-Concept 2017 Android-Listes_V1.0 – IE-Concept 2017

Les listes Généralités sur les listes Adapter AdapterView Programmation Android Les listes Plan Les listes Généralités sur les listes Adapter AdapterView Android-Listes_V1.0 – IE-Concept 2017

Généralités sur les listes Programmation Android Les listes Généralités sur les listes Généralités sur les listes Les listes permettent l’affichage d’une grande quantité de données, plusieurs dizaines/centaines d’éléments sans ralentissement. Intègre une gestion de scroll afin de pouvoir faire défiler facilement. Limite la consommation mémoire et processeur. Permet d’afficher des vues complexes et variées. Android-Listes_V1.0 – IE-Concept 2017

Généralités sur les listes Programmation Android Les listes Généralités sur les listes Généralités sur les listes Exemples d’applications utilisant des listes Twitter Facebook Android-Listes_V1.0 – IE-Concept 2017

Généralités sur les listes Programmation Android Les listes Généralités sur les listes Généralités sur les listes Les listes ont été créées afin de permettre aux développeurs de pouvoir charger dynamiquement des éléments sans ralentissement. Elles reposent sur un composant dédié. ListView Un nouveau composant est venu améliorer ListView dans les versions récentes d’Android (API > 20) nommé RecyclerView. Son implémentation étant plus complexe, il est préférable de commencer la découverte des listes avec ListView. Android-Listes_V1.0 – IE-Concept 2017

Généralités sur les listes Programmation Android Les listes Généralités sur les listes Généralités sur les listes Une liste peut être vue comme trois objets distincts : Le Dataset : représente les données brutes à afficher L’Adapter : représente une vue par élément de la liste L’AdapterView : représente la somme des vues Il s’agit du modèle MVP (Model-View-Presenter) Dataset { élément1, élément2, … } Créer une view par élément Adapter AdapterView + Le layout View 1 View n MODEL VIEW PRESENTER Android-Listes_V1.0 – IE-Concept 2017

Généralités sur les listes Programmation Android Les listes Généralités sur les listes Généralités sur les listes Le MVP permet de vraiment séparer les données à afficher et l’affichage. Cela apporte une meilleure maintenabilité du code Le travail sur le model n’engendrera pas de modification sur l’affichage Le travail sur l’affichage ne créera pas de modification sur les données Il existe des Adapter pour certains types de données de base. ArrayAdapter : affiche les informations simples. SimpleAdapter : affiche plusieurs informations pour chaque éléments. CursorAdapter : adapte le contenu qui provient d’une base de données. Pour tous les autres types de données, il faudra créer son propre Adapter en héritant de BaseAdapter. Android-Listes_V1.0 – IE-Concept 2017

Généralités sur les listes Programmation Android Les listes Généralités sur les listes Généralités sur les listes Exemple d’utilisation d’un ArrayAdapter avec un Dataset de type tableau de String. Android-Listes_V1.0 – IE-Concept 2017

Programmation Android Les listes Adapter Adapter Le rôle de l’adapter est de convertir une donnée ou un groupe de données en une vue. Il fait le lien entre un layout et les données permettant de remplir le layout. Android-Listes_V1.0 – IE-Concept 2017

Programmation Android Les listes Adapter Adapter L’utilisation des layout et adapter de base permet de réaliser des listes rapides mais simplistes (layout avec peu d’éléments). Lorsque l’on souhaite réaliser des vues avec un layout plus compliqué (plusieurs éléments, alignement des éléments personnalisés, …) il faut créer une nouvelle classe adapter héritant de BaseAdapter. En parallèle de cette nouvelle classe, il faut créer un nouveau layout qui servira de base pour la génération des vues. Android-Listes_V1.0 – IE-Concept 2017

Programmation Android Les listes Adapter Adapter En effet un adapter est à la fois une classe Java et un layout. Le layout représente la vue, la classe Java le moyen de transférer les données dans la vue. Exemple de layout réalisé pour une vue d’adapter : Android-Listes_V1.0 – IE-Concept 2017

Programmation Android Les listes Adapter Adapter Une classe héritant de BaseAdapter doit redéfinir les quatre méthodes suivantes: public int getCount() public Object getItem(int position) public long getItemId(int position) public View getView(int position, View convertView, ViewGroup parent) En plus de ces quatre méthodes, il faut absolument définir un constructeur permettant de stocker le context ainsi que les données (Dataset). Android-Listes_V1.0 – IE-Concept 2017

Adapter public int getCount() public Object getItem(int position) Programmation Android Les listes Adapter Adapter public int getCount() Cette méthode permet de connaître le nom de d’occurrence de données (le nombre d’éléments dans la liste). public Object getItem(int position) Cette méthode permet de retourner une occurrence précise des données en fonction du paramètre position. public long getItemId(int position) Cette méthode permet de retourner un Id unique pour chaque occurrence des données. public View getView(int position, View convertView, ViewGroup parent) Cette méthode permet de retourner pour chaque occurrence de données une view, remplie comme voulue, en utilisant le layout de l’adapter. Android-Listes_V1.0 – IE-Concept 2017

Android-Listes_V1.0 – IE-Concept 2017 Programmation Android Les listes Adapter Android-Listes_V1.0 – IE-Concept 2017

Programmation Android Les listes AdapterView AdapterView L’adapteur se charge de construire les sous-éléments, l’AdapterView lui liera ces sous-éléments et fera en sorte de les afficher en une liste. C’est l’AdatperView qui gérera les interactions avec les utilisateurs. L’Adataper s’occupe des éléments en tant que données, alors que l’AdapterView s’occupe de les afficher et veille aux interactions avec un utilisateur. Pour associer un Adapter à un AdapterView, on utilise la méthode : Void setAdapter(Adapter adapter) Android-Listes_V1.0 – IE-Concept 2017

Programmation Android Les listes AdapterView AdapterView Les AdapterView contiennent toutes les view, mais charge seulement celles visibles afin d’économiser des ressources. Vue à afficher Vue affichée Vue sortie de l’écran Vues recyclées Scroll en cours Cette vue est sur le point d’apparaître L’adapter va la réutiliser et insérer les nouvelles données Une fois sortie de l’écran, cette vue va être recyclée, puis réinjectée en haut de la liste Android-Listes_V1.0 – IE-Concept 2017

AdapterView La fonction de callback associée est : Programmation Android Les listes AdapterView AdapterView La gestion des interactions utilisateur se fait entièrement sur l’AdapterView. Pour ajouter une gestion du clic il faut utiliser la méthode : void setOnItemClickListener(AdapterView.OnItemClickListener listener) La fonction de callback associée est : void onItemClick(AdapterView<?> adapter, View view, int position, long id) adapter -> l’AdapterView qui contient la vue sur laquelle le clic a été effectué. view -> la vue que laquelle le clic a été effectué. position -> la position de la vue dans la liste. id -> l’identifiant de la vue. Android-Listes_V1.0 – IE-Concept 2017

Programmation Android Les listes AdapterView AdapterView Exemple d’utilisation d’un clic sur un élément d’une liste : Lors d’un clic sur un élément de la liste, faire apparaître le numéro de l’élément ainsi que l’attribut « lastName » de l’élément dans un Toast. Android-Listes_V1.0 – IE-Concept 2017

Programmation Android Les listes Ressources Ressources https://developer.android.com/guide/topics/ui/layout/listview.html https://developer.android.com/reference/android/widget/ListView.htm l https://developer.android.com/ Android-Listes_V1.0 – IE-Concept 2017