2017-08-10 5 views
2

Mon exigence est que l'application soit uniquement en mode portrait sur les téléphones et uniquement en mode paysage sur les onglets, en commençant par l'écran d'accueil. Essayé avec le plugin Screen Orientation disponible sur natif ionique, mais n'a pas fonctionné pour moi.Ionic 3 - Le verrouillage d'orientation de l'écran ne fonctionne pas

choses que j'ai essayé:

Sur app.component.ts:

constructor(..., private screenOrientation: ScreenOrientation) { 
    platform.ready().then(() => { 

     this.screenOrientation.lock('landscape'); 
     ScreenOrientation.lockOrientation('landscape'); 
     screen.msLockOrientation('landscape'); 
    this.screenOrientation.lock(this.screenOrientation.ORIENTATIONS.LANDSCAPE); 

J'ai essayé toutes les lignes ci-dessus sur home.ts aussi, mais ils ne travaillaient pas. Lorsque je mets:

console.log(this.screenOrientation.type); 

Ceci affichera correctement l'orientation de l'écran dans les journaux. Chaque fois que je mets la méthode subscribe, cela fonctionne et m'avertit chaque fois que l'orientation de l'écran change, ce qui signifie que toutes les instructions d'importation fonctionnent parfaitement et que je peux accéder aux méthodes du plugin correctement. Je suis capable de reproduire ce problème sur Android et iOS. Toute aide serait grandement appréciée.

détails Plate-forme/bibliothèque/de dépendance:

"@ angulaire/commune": "4.1.3",

"ionique angulaire": "3.6.0",

« ionique »: « 3.7.0 »

Répondre

0

dans votre config.xml vous pouvez essayer d'ajouter cette ligne pour faire de votre orientation pour verrouiller le mode paysage.

<preference name="orientation" value="landscape" /> 
+0

Cela fonctionne lorsque je dois verrouiller l'orientation pour tous les périphériques. Cependant, je dois le garder en mode portrait uniquement pour les téléphones et le paysage uniquement pour les onglets. –