안드로이드에서 화면회전이 안되게 할수있을까요?


발생하는 문제 및 실행환경

디바이스 :HTC Desire

제가 앱개발을 하고있는데요. landscape 모드까지 설계하긴 힘들어서 portrait모드만 가능하게 하고 싶은데요.

<application 
  android:debuggable="true"
  android:icon="@drawable/icon" 
  android:label="@string/app_name"
  android:screenOrientation="portrait">

그래서 매니페스트 파일에 이렇게 추가했는데 제 디바이스에서는 작동을 안하네요. 그래서 다른 사이트를 찾아보니까

<application 
  android:debuggable="true"
  android:icon="@drawable/icon" 
  android:label="@string/app_name"
  android:configChanges="orientation"       
  android:screenOrientation="portrait">

매니페스트파일에 저렇게 하고 액티비티 클래스에서 밑의 코드를 넣는건데

public void onConfigurationChanged(Configuration newConfig)
{
    super.onConfigurationChanged(newConfig);
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}

이렇게 해줘도 디바이스를 뒤집으면 가로모드됐다가 세로모드 됐다가 해요. 어떻게 고정하죠?

  • 2016년 01월 18일에 작성됨

조회수 165


1 답변


좋아요
0
싫어요
채택취소하기

screenOrientation을 application의 원소에 넣지마시고 activity의 원소에 넣으세요. 그리고 configChanges도 밑의 코드처럼 넣으세요.

<activity
   android:screenOrientation="portrait"
   android:configChanges="orientation|keyboardHidden">
</activity>
  • 2016년 01월 18일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close