* Générer des `print` dans la méthode `onCreate()` d'une activité
* Visualiser ces affichages dans le `Logcat`
### `Log`
* Consulter la documentation de `android.util.Log` à l'url suivante : [https://developer.android.com/reference/android/util/Log.html](https://developer.android.com/reference/android/util/Log.html)
* Générer des logs dans la méthode `onCreate()` d'une activité
* Visualiser les logs dans le `Logcat` et dans `Run`
* Visualiser les logs dans le `Logcat`
### `Toast`
* Consulter la documentation de `android.widget.Toast` à l'url suivante : [https://developer.android.com/reference/android/widget/Toast.html](https://developer.android.com/reference/android/widget/Toast.html)
* Utiliser la méthode `makeText()` pour faire afficher un message temporairement.
* Utiliser la méthode `makeText(xxx).show()` pour faire afficher un message temporairement.
@@ -113,17 +118,24 @@ Un changement de configuration, comme un passage du mode portrait à paysage, n
La classe `ViewModel` a été conçue pour avoir un cycle de vie différent de l'activité et conserver, même en cas de rotation, la référence sur le modèle.
* Définir une sous classe `XXXViewModel` de `androidx.lifecycle.ViewModel`, par exemple `NoteViewModel
* Définir une sous classe `XXXViewModel` de `androidx.lifecycle.ViewModel`, par exemple `NoteViewModel`
* Référencer dans cette classe le Modèle (la liste de `Note`)
* Dans l'activité récupérer le `ViewModel` :
```
val mVm: XXXViewModelnew = ViewModelProvider(this).get(XXXViewModelnew::class.java)
val mVm: XXXViewModel by viewModels()
```
Ceci fonctionne car la dépendance suivante a été ajoutée dans le fichier `app/build.gradle` :