Propriété de Albiri Sigue
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
276 L’art du développement Android
Tout comprendre
Tous ces scénarios supposent que vous faites pivoter l’écran en ouvrant le clavier du terminal (ou en utilisant la combinaison de touches Ctrl+F12 avec l’émulateur), ce qui est la
norme pour les applications Android.
Cependant, nous n’avons pas encore présenté le scénario utilisé par l’iPhone.
Vous avez sans doute déjà vu une ou plusieurs publicités pour l’iPhone montrant comment
l’écran change d’orientation lorsque l’on fait pivoter le téléphone. Par défaut, le G1 ne se
comporte pas de cette façon – sur ce terminal, l’orientation de l’écran ne dépend que de
l’ouverture ou de la fermeture du clavier.
Cependant, il est très facile de modifier ce comportement : pour que l’affichage pivote en
fonction de la position du téléphone, il suffit d’ajouter android:screenOrientation =
"sensor" au fichier AndroidManifest.xml (voir le projet Rotation/RotationFive) :
package="com.commonsware.android.rotation.five"
android:versionCode="1"
android:versionName="1.0.0">
android:screenOrientation="sensor"
android:label="@string/app_name">
La valeur "sensor" indique à Android que vous souhaitez que ce soient les accéléromètres qui contrôlent l’orientation de l’écran, afin qu’il pivote en même temps que le téléphone.
Au moins sur le G1, ceci semble ne fonctionner que lorsque l’on passe de la position
portrait classique à la position paysage – en faisant pivoter le téléphone de 90 degrés dans
le sens inverse des aiguilles d’une montre. Une rotation dans l’autre sens ne modifie pas
l’écran.
Notez également que cette configuration désactive la rotation de l’écran par l’ouverture du
clavier. Dans une activité "normale", avec le terminal en position portrait, l’écran pivotera
si l’on ouvre le clavier ; avec une activité utilisant la configuration android:screenOrientation = "sensor", l’écran ne pivotera pas.
Livre Android.book Page 276 Dimanche, 8. novembre 2009 12:23 12
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
276 L’art du développement Android
Tout comprendre
Tous ces scénarios supposent que vous faites pivoter l’écran en ouvrant le clavier du terminal (ou en utilisant la combinaison de touches Ctrl+F12 avec l’émulateur), ce qui est la
norme pour les applications Android.
Cependant, nous n’avons pas encore présenté le scénario utilisé par l’iPhone.
Vous avez sans doute déjà vu une ou plusieurs publicités pour l’iPhone montrant comment
l’écran change d’orientation lorsque l’on fait pivoter le téléphone. Par défaut, le G1 ne se
comporte pas de cette façon – sur ce terminal, l’orientation de l’écran ne dépend que de
l’ouverture ou de la fermeture du clavier.
Cependant, il est très facile de modifier ce comportement : pour que l’affichage pivote en
fonction de la position du téléphone, il suffit d’ajouter android:screenOrientation =
"sensor" au fichier AndroidManifest.xml (voir le projet Rotation/RotationFive) :
android:versionCode="1"
android:versionName="1.0.0">
android:label="@string/app_name">
La valeur "sensor" indique à Android que vous souhaitez que ce soient les accéléromètres qui contrôlent l’orientation de l’écran, afin qu’il pivote en même temps que le téléphone.
Au moins sur le G1, ceci semble ne fonctionner que lorsque l’on passe de la position
portrait classique à la position paysage – en faisant pivoter le téléphone de 90 degrés dans
le sens inverse des aiguilles d’une montre. Une rotation dans l’autre sens ne modifie pas
l’écran.
Notez également que cette configuration désactive la rotation de l’écran par l’ouverture du
clavier. Dans une activité "normale", avec le terminal en position portrait, l’écran pivotera
si l’on ouvre le clavier ; avec une activité utilisant la configuration android:screenOrientation = "sensor", l’écran ne pivotera pas.
Livre Android.book Page 276 Dimanche, 8. novembre 2009 12:23 12
