- Modifier le thème du projet : res/values/styles.xml
- < style name=“AppTheme” parent=“Theme.AppCompat.Light.DarkActionBar”>
- < style name=“AppTheme” parent=“Theme.AppCompat.Light.NoActionBar”>
-
- Ajout d’un layout pour représenter la Toolbar
- android:layout_height=“wrap_content”
- android:minHeight="?attr/actionBarSize" /> --> Dépend du device
Attention : Définir un id
Ajouter un thème --> styles.xml
android:theme="@style/ToolbarTheme"
< item name=“android:textColorPrimary”>@android:color/white
-
<include
layout="@layout/toolbar"
android:layout_width=“match_parent”
android:layout_height=“wrap_content”
/ > -
- Activation de la Toolbar par code
- configureToolbar()
- Attention à l’import de Toolbar
-
- Mise en place de la navigation
- AndroidManifest.xml --> Mettre en place la hiérarchie
-
- Activer la navigation par code
- Modifier la méthode configureToolbar() de l’enfant
- Démarrage de DetailActivity
- Appui sur Back Button --> MainActivity.onStart()
–> MainActivity.onResume() - Appui sur Nav --> MainActivity.onCreate()
–> MainActivity.onStart()
–> MainActivity.onResume() -
- On peut empêcher de détruire MainActivity avec NAV
- AndroidManifest ajouter android:launchMode:“singleTop”
ATTENTION : Pour le retour d’informations depuis EnfantActivity : Il y a une différence entre NAV et Back Button
Mise en place du menu dans la toolbar
- Création d’un dossier de ressources “menu”
- Création d’un fichier activity_main_menu.xml
- Ajout d’un <item par élément de menu
-
- Création d’un pack d’icône depuis AS
- Clic-droit /res --> New --> Image Asset
- Créer le menu par code
-
- Définir les actions du menu par code
- onOptionsItemSelected()
Pattern Liste --> Détail
RecyclerView
-
- Ajouter au projet la librarie pour RecyclerView
- Gradle --> build.gradle(Module: app)
-
- dependencies
- implementation ‘androidx.recyclerview:recyclerview:1.1.0’
- Sync Now
-
MainActivity contiendra la liste --> Modifier le layout
-
- Copier les ressources graphiques, préparer un tableau
- Ajouter un fichier de ressources arrays.xml dans le /res/values
- Compléter le fichier arrays.xml
-
- Représenter le layout pour un comic book
- Créer un nouveau layout : activity_main_item.xml
-
<ImageView : id !!!
-
<TextView : id !!!
- La mise en place du code
-
- La classe responsable du remplissage de layout_item
- xxxViewHolder
- Le constructeur de cette classe est appelé par l’Adapter
- On reçoit la View que l’on doit mettre à jour
-
La classe ViewHolder doit étendre RecyclerView.ViewHolder
-
- Pour remplir le layout le système appelera la méthode updateWithxxx
- Pour mettre à jour ImageView --> setImageResource()
-
Mettre eb okace le model : ComicBook
-
Mise en place de xxxAdpater
-
Méthode onCreateViewHolder()
-
- Récupérer le contexte
- parents.getContext();
-
Récupérer le LayoutInflater
-
Créer la View depuis inflater
-
return new xxxViewHolder(view)
-
-
Méthode onBindViewHolder
- Demander la mise à jour à ViewHolder
-
-
Mise à jour de l’Activity
- configureRecyclerView()
- getData()
-
Written with StackEdit.