Nantes Université

Skip to content
Extraits de code Groupes Projets
Valider ca7c8988 rédigé par Jean-Francois REMM's avatar Jean-Francois REMM
Parcourir les fichiers

version 2024

parent 6fdb5e5d
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -2,19 +2,24 @@
## Objectifs
les objectifs de ce tp sont
- gestion des événements
### `out`
### `Log`
* 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.
https://kotlinlang.org/docs/java-interop.html#notation-for-platform-types
......@@ -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` :
```
implementation('androidx.activity:activity-ktx:1.6.1')
```
Ancienne syntaxe :
```
val mVm: XXXViewModel = ViewModelProvider(this).get(XXXViewModel::class.java)
```
* Le `ViewModel` n'est pas réinitialisé à chaque redémarrage de l'activité.
* Tester !
[https://developer.android.com/topic/libraries/architecture/viewmodel.html](https://developer.android.com/topic/libraries/architecture/viewmodel.html)
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter