728x90
앱 개발시에 화면의 방향을 강제로 한 방향으로 설정할 필요가 있을때 사용하면 좋다.
앱의 특성상 세로화면 혹은 가로화면만 제공해야 된다면 아래와 같이 설정해 주면 된다.
1. AndroidManifest.xml 에서 설정
<activity android:name=".MainActivity"
android:screenOrientation="portrait">
screenOrientation의 옵션으로 방향설정 및
방향센서의 값으로 화면전환 옵션 부여 할 수 있다.
속성값으로는 아래와 같이 종류가 있다.
android:screenOrientation=["unspecified" | "behind" |
"landscape" | "portrait" |
"reverseLandscape" | "reversePortrait" |
"sensorLandscape" | "sensorPortrait" |
"userLandscape" | "userPortrait" |
"sensor" | "fullSensor" | "nosensor" |
"user" | "fullUser" | "locked"]
아래 옵션에 대한 설명은 구글 developers에서 제공하는 설명이다.
옵션명 | 설명 |
"unspecified" | 기본값입니다. 시스템이 방향을 선택합니다. 시스템이 사용하는 정책과 특정 컨텍스트에서 이루어지는 선택은 기기마다 다를 수 있습니다. |
"behind" | 액티비티 스택에서 바로 아래에 있는 액티비티와 동일한 방향입니다. |
"landscape" | 가로 방향입니다(디스플레이의 높이보다 너비가 더 긺). |
"portrait" | 세로 방향입니다(디스플레이의 너비보다 높이가 더 긺). |
"reverseLandscape" | 정상적인 가로 방향에서 반대 방향인 가로 방향입니다. API 레벨 9에서 추가되었습니다. |
"reversePortrait" | 정상적인 세로 방향에서 반대 방향인 세로 방향입니다. API 레벨 9에서 추가되었습니다. |
"sensorLandscape" | 기기 센서에 따라 정상적인 가로 방향 또는 반전된 가로 방향이 될 수 있습니다. 사용자가 센서 기반 회전을 잠갔더라도 센서가 사용됩니다. API 레벨 9에서 추가되었습니다. |
"sensorPortrait" | 기기 센서에 따라 정상적인 세로 방향 또는 반전된 세로 방향이 될 수 있습니다. 사용자가 센서 기반 회전을 잠갔더라도 센서가 사용됩니다. API 레벨 9에서 추가되었습니다. |
"userLandscape" | 기기 센서 및 사용자의 기본 설정에 따라 정상적인 가로 방향 또는 반전된 가로 방향이 될 수 있습니다. API 레벨 18에서 추가되었습니다. |
"userPortrait" | 기기 센서 및 사용자의 기본 설정에 따라 정상적인 세로 방향 또는 반전된 세로 방향이 될 수 있습니다. API 레벨 18에서 추가되었습니다. |
"sensor" | 기기 방향 센서가 방향을 결정합니다. 디스플레이 방향은 사용자가 기기를 잡고 있는 방법에 따라 다르며 사용자가 기기를 회전할 때 변경됩니다. 그러나 일부 기기는 기본적으로 4개의 모든 방향으로 회전하지 않습니다. 4개의 모든 방향을 허용하려면 "fullSensor"를 사용합니다. 사용자가 센서 기반 회전을 잠근 상태라도 센서가 사용됩니다. |
"fullSensor" | 기기 방향 센서가 4개의 방향을 결정합니다. 이는 4개의 화면 방향을 허용한다는 것을 제외하면 기기가 정상적으로 수행하는 것과 상관없이 "sensor"와 유사합니다. (예를 들어, 일부 기기는 세로 반전 또는 가로 반전을 정상적으로 사용하지 않지만 이 특성은 정상적으로 사용합니다.) API 레벨 9에서 추가되었습니다. |
"nosensor" | 물리적 방향 센서를 참조하지 않고 방향을 결정합니다. 센서가 무시되므로 사용자가 기기를 이동하는 방법에 따라 디스플레이가 회전하지 않습니다. |
"user" | 사용자의 현재 기본 설정 방향입니다. |
"fullUser" | 사용자가 센서 기반 회전을 잠금 설정한 경우 user와 동일하게 작동하고, 잠금 설정을 하지 않은 경우 fullSensor와 동일하게 작동하며 4개의 화면 방향을 허용합니다. API 레벨 18에서 추가되었습니다. |
"locked" | 현재 회전 방향을 잠금 설정합니다. API 레벨 18에서 추가되었습니다. |
2. Method안에서 사용하는 방법
AppCompatActivity의 setRequestedOrientation() 메소드 사용
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
해당 방법은 Activity가 recreate 될 수 있음을 참고 합니다.
728x90
'Programing > android' 카테고리의 다른 글
[android studio] 인앱결제 구현방법 (0) | 2021.09.26 |
---|---|
[android studio] toolbar 그룹화 (0) | 2021.09.23 |
[android studio] 단축키 정리 (필요한 항목만...) (0) | 2021.09.16 |
[android studio] 액션바 색상변경 처리 (0) | 2021.09.15 |
android 앱에 광고배너 추가 (0) | 2021.09.13 |
댓글