마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 액티비티 회전하기

0 추천

 

안녕하세요.

앱이 실행되는 안드로이드 기기가 회전할 때, 이미지가 항상 같은 각도?로 보이도록 구현하고 싶습니다.

예를 들어 위의 그림에 맨 위에 타이틀이 있고, 화살표 그림이 있다고 치면..

현재 왼쪽 상태는 0도이고, 오른쪽 회전한 상태는 270도나 90?도가 되겠네요. 저렇게 돌려도 화살표 방향이

위로 향하도록 하고 싶습니다. 폰의 기본카메라 앱이나, 구글 스토어의 몇몇 카메라 앱을 보면 

핸드폰을 회전할 때 카메라나 줌 등등 여러 아이콘들이 동적으로 방향이 변화하더라구요.

안드로이드 환경설정의 '자동회전'을 비활성화 해도 이렇게 되던데,

0도 90도 180도 270도를 감지해서 어떻게 구현할수 있을까요.

일단 자동회전을 활성화한 상태의 onConfigurationChanged 는 해봤는데.. 자동회전 비활성화 상태에서도

각도를 캐치할 수있는 방법을 알고 싶습니다.

 

anci (19,950 포인트) 님이 2015년 1월 29일 질문

2개의 답변

+1 추천
매니페스트에 android:screenOrientation="fullSensor" 라고 넣으면 자동회전 꺼놔도 돌아갑니다
alkyne (22,960 포인트) 님이 2015년 1월 29일 답변
+1 추천
핸드폰 현재 각도를 XYZ축으로 알 수 있는 소스가 있긴합니다.

자기센서와 중력센서를 이용해서 오리엔테이션을 구하는 소스인데

상당히 불안정합니다.

저도 이거 이용해서 핸드폰의 현재 각도를 OpenGL로 표현하려고 했었거든요.

그런데 값이 마구 튀더군요.

저도 다른분 블로그에서 본거라 전체 소스를 드릴순 없지만, getOrientation, getRotationMatrix 이 두가지로 검색하면 나올겁니다.
익명사용자 님이 2015년 1월 29일 답변
답변감사합니다.현재 회전한 각도만 구하고싶은데..
각도를 구하자니 화면까지 같이 회전하게 되더라구요..이런경우엔 센서를 사용할 수밖에 없는건가요?
...