안드로이드 회전 막기

211.226.212.27 (토론)님의 2018년 6월 13일 (수) 21:55 판
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
android activity rotation lock
안드로이드 화면회전 막기, 안드로이드 액티비티 방향 고정
안드로이드 화면 고정, 안드로이드 회전 고정
안드로이드 화면 회전 안되게 하기

1 핵심코드[ | ]

  • Activity 클래스의 onCreate 메소드에 아래와 같은 코드 추가
세로로 고정 (길게)
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
→ 정방향 세로로 완전히 고정. 회전불가
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
→ 역방향 세로 가능. 즉 180도 회전은 가능
가로로 고정 (넓게)
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
→ 정방향 가로로 완전히 고정. 회전불가
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
→ 역방향 가로 가능. 즉 180도 회전은 가능

2 전체코드 예시[ | ]

  • MainActivity.java를 수정한 예시
  • 최초 실행되는 MainActivity에 적용되며, 액티비티가 여러 개라면 각 클래스마다 설정해야 함
  • 세로 방향으로 고정됨
package com.example.myfirstapp;
 
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
 
public class MainActivity extends Activity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
        setContentView(R.layout.activity_main);
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
 
}

3 같이 보기[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}