Interdire la rotation de l'écran

 

Pour interdire la rotation de l'écran, vous indiquerez à AndroidSystème d'exploitation basé sur le noyau Linux conçu initialement pour les smartphones et tablettes et qui peut être trouvé sur d'autres appareils (Android TV, Android Auto, ...) que votre application ne doit pas réagir à la rotation en précisant simplement l'orientation que doit utiliser votre activité.

Image non trouvée !Cette information concerne une activité. Il faudra donc répéter cette information pour toutes les activités concernées !

 

Interdiction par AndroidManifest

Pour cela, il suffit d'ouvrir le fichier AndroidManifest.xml

Dans la balise activity de l'activité à bloquer sur une orientation précise, vous ajoutez l'attribut androidSystème d'exploitation basé sur le noyau Linux conçu initialement pour les smartphones et tablettes et qui peut être trouvé sur d'autres appareils (Android TV, Android Auto, ...):screenOrientation="orientation"

ou orientation pourra prendre la valeur "portrait" ou "landscape".

Mettez cet attribut avant androidSystème d'exploitation basé sur le noyau Linux conçu initialement pour les smartphones et tablettes et qui peut être trouvé sur d'autres appareils (Android TV, Android Auto, ...):label par exemple:

<activity

androidSystème d'exploitation basé sur le noyau Linux conçu initialement pour les smartphones et tablettes et qui peut être trouvé sur d'autres appareils (Android TV, Android Auto, ...):name=".XxxxxxActivity"
androidSystème d'exploitation basé sur le noyau Linux conçu initialement pour les smartphones et tablettes et qui peut être trouvé sur d'autres appareils (Android TV, Android Auto, ...):screenOrientation="portrait"
androidSystème d'exploitation basé sur le noyau Linux conçu initialement pour les smartphones et tablettes et qui peut être trouvé sur d'autres appareils (Android TV, Android Auto, ...):label="@string/app_name">

 

Image non trouvée !Attention à bien refermer la balise activity si elle se fermait sur androidSystème d'exploitation basé sur le noyau Linux conçu initialement pour les smartphones et tablettes et qui peut être trouvé sur d'autres appareils (Android TV, Android Auto, ...):label="@string/app_name"> et que vous voulez mettre votre ligne après celle-ci, reportez bien le > sur votre androidscreenOrientation !

<activity

androidSystème d'exploitation basé sur le noyau Linux conçu initialement pour les smartphones et tablettes et qui peut être trouvé sur d'autres appareils (Android TV, Android Auto, ...):name=".XxxxxxActivity"
androidSystème d'exploitation basé sur le noyau Linux conçu initialement pour les smartphones et tablettes et qui peut être trouvé sur d'autres appareils (Android TV, Android Auto, ...):label="@string/app_name"
androidSystème d'exploitation basé sur le noyau Linux conçu initialement pour les smartphones et tablettes et qui peut être trouvé sur d'autres appareils (Android TV, Android Auto, ...):screenOrientation="portrait">

 

Interdiction par code

Il suffit de mettre cette ligne de code:

Pour rester en mode portrait:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

 

Pour rester en mode paysage:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);