[ionic-framework] 모든 플랫폼에서 ionic에서만 앱을 세로 모드로 제한하는 방법은 무엇입니까?

Ionic / Cordova에서 작업 중입니다.이 항목을 추가 androidManifest.xml했지만이 기능이 작동하지 않았고 앱이 여전히 두 가지 방식으로 표시됩니다.

android:screenOrientation="portrait"

내 앱을 세로 모드로만 제한하려면 어떻게해야합니까? Android에서 확인했는데 작동하지 않습니다.



답변

모든 장치에서 세로 모드로만 제한하려면이 줄을 프로젝트 루트 폴더의 config.xml에 추가해야합니다.

<preference name="orientation" value="portrait" />

그런 다음 명령 줄에 아래 텍스트를 입력하여 플랫폼을 다시 빌드하십시오.

ionic build


답변

Ionic v2 + 업데이트

Ionic 버전 2 이상의 경우 및 플러그인을 포함하여 사용하는 모든 플러그인에 해당하는 Ionic Native 패키지 도 설치해야합니다 .cordova-plugin-phonegap-plugin-

  1. Ionic 네이티브 플러그인 설치

    CLI 에서 플러그인 용 Ionic Native의 TypeScript 모듈을 설치합니다 .

    $ ionic cordova plugin add --save cordova-plugin-screen-orientation
    $ npm install --save @ionic-native/screen-orientation
    

    * --save명령은 선택 사항이며 package.json파일에 플러그인을 추가하지 않으려면 생략 할 수 있습니다.

  2. ScreenOrientation플러그인 가져 오기

    문서controller 에서 사용할 수있는 자세한 내용은 플러그인을 가져옵니다 .

    import { ScreenOrientation } from '@ionic-native/screen-orientation';
    
    @Component({
        templateUrl: 'app.html',
        providers: [
            ScreenOrientation
        ]
    })
    
    constructor(private screenOrientation: ScreenOrientation) {
      // Your code here...
    }
    
  3. 당신의 일을

    프로그래밍 방식으로 화면 방향을 잠그고 잠금 해제합니다.

    // Set orientation to portrait
    this.screenOrientation.lock(this.screenOrientation.ORIENTATIONS.PORTRAIT);
    
    // Disable orientation lock
    this.screenOrientation.unlock();
    
  4. 보너스 포인트

    현재 방향을 가져올 수도 있습니다.

    // Get current orientation
    console.log(this.screenOrientation.type);  // Will return landscape" or "portrait"
    

답변

https://cordova.apache.org/docs/en/4.0.0/config_ref/#global-preferences 에 따르면 ,

방향을 사용하면 방향을 잠그고 방향 변경에 따라 인터페이스가 회전하는 것을 방지 할 수 있습니다. 가능한 값은 기본값, 가로 또는 세로입니다. 예:

<preference name="Orientation" value="landscape" />

이러한 값은 대소 문자를 구분하며 “orientation”이 아니라 “Orientation”입니다.


답변

방향에 대해 뭔가를하고 싶다면 앱 방향을 변경할 때 어떤 작업을 수행하려는 경우 ionic 프레임 워크 플러그인을 사용해야합니다 …
https://ionicframework.com/docs/native/screen-orientation/

앱을 세로 또는 가로 모드로 제한하려면 config.xml에 다음 줄을 추가하면됩니다.

<preference name="orientation" value="portrait" />
                 OR
<preference name="orientation" value="landscape" />


답변

먼저 다음을 사용하여 Cordova 화면 방향 플러그인 을 추가해야합니다.

cordova plugin add cordova-plugin-screen-orientation

다음 추가 screen.lockOrientation('portrait');.run()방법

angular.module('myApp', [])
.run(function($ionicPlatform) {

    screen.lockOrientation('portrait');
    console.log('Orientation is ' + screen.orientation);

});
})


답변

각도 안에 다음 과 같은 app.js선을 추가하십시오 screen.lockOrientation('portrait');.

an

angular.module('app', ['ionic'])
.run(function($ionicPlatform) {
    // LOCK ORIENTATION TO PORTRAIT.
    screen.lockOrientation('portrait');
  });
})

.run함수에 다른 코드도 있지만 관심있는 코드는 내가 작성한 줄입니다. <preference name="orientation" value="portrait" />내 코드에 줄 을 추가하지 않았지만cordova-plugin-device-orientation


답변

추가하십시오 android:screenOrientation="portrait"androidManifest.xml안드로이드를위한 활동 태그의 속성으로 파일.

<activity
        android:name="com.example.demo_spinner.MainActivity"
        android:label="@string/app_name"
        android:screenOrientation="portrait" >
</activity>