0

일부 페이지 만 가로 방향으로 표시 할 수있는 앱을 개발 중입니다. 디스플레이에 화면을 잠그고 싶지 않습니다. 안드로이드를 거부하고 방향을 변경하고 싶습니다.방향 변경 취소 - Android

내가 사용할 수있는 것이 있습니까? 마찬가지로 Android는 방향 변경시 런타임에 해당 방향으로 갈 수 있는지 묻습니다.

없으면 현재 화면 방향을 잠글 수 있습니까? 나는 setRequestedOrientation이 그것을 할 수 있다는 것을 알고 있지만, 현재의 방향을 발견하고 (심지어는 '보통'또는 '역'인물/풍경과 같은 올바른 방향을 발견하고) 그곳을 잠그는 것을 의미합니다.

EDIT : 이 앱에는 하나의 활동 만 있으며, 그 상태 (골짜기 시간과 사용자 입력이 변경됨)에 따라 회전하거나 회전 할 수없는 문제가 내 문제입니다.

구성 변경에 대한 http://developer.android.com/guide/topics/resources/runtime-changes.html에서 볼 수 있듯이

: 구성이 변화를 수행 할 때

는 "구성이 콜백을 특정 구성을 변경하는 동안 활동을 다시 시작 방지를 시스템을 직접 변경할 수 있지만 수신 처리 수동으로 할 수 있도록 필요에 따라 활동을 업데이트하십시오. "

구성이 변경되었다고해도, 그 전에이 동작을 차단하고 싶습니다.

+1

http://stackoverflow.com/questions/2150287/force-an-android-activity-to-always-use-landscape-mode의 중복? –

+0

그냥 @BrianNickel이 말한 것에 덧붙이면, [이 대답] (http://stackoverflow.com/a/2150558/1438733)이 아마도 당신이 찾고있는 것일 것입니다. 당신은 [이] (http://stackoverflow.com/questions/1512045/how-to-disable-orientation-change-in-android)을 조사하고 싶을지도 모른다. – Eric

+0

제 질문은 런타임에 장치가 방향을 변경하지 못하도록하는 방법입니다. –

답변

3

각 활동에 하나씩 추가하십시오.

public void checkActivityPos() { 

    if(somthing == "this") { 
     myActivity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 
    }else { 
     myActivity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 
    } 
} 
+0

사실, 하나의 활동 만 있고, 그것의 상태에 따라 회전 할 수도 있고 가지 않을 수도 있습니다. 그것은 제 문제입니다. –

+0

언제든지이 메소드를 활동에서 호출 할 수 있습니다. –

+0

나는 @ Dr.Dredel에 동의한다. 어쩌면 조건문을 사용하여 활동이 어디에 있는지 확인할 수있다. 위의 편집을 본다. – CelticParser