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

Surfaceview 관련 질문입니다.

0 추천
SurfaceView를 사용 중인데 Activity가 회전할 때 SurfaceView의 width와 height이 바뀌지 않아서 화면이 잘려서

나오는 현상이 있습니다. 이를 해결하려고 2가지 방법을 시도했는데 2가지 방법 모두 문제가 있습니다.

 

1. 화면 회전할 때 SurfaceView의 size를 setLayoutParams로 display 크기에 맞춰주는 방법

     이 방법을 사용하면 최종적으로는 정상적으로 출력되긴하는데 Activity가 회전하는 동작과 View의 size를 변경하는

     동작이 동시에 일어나지 않으면 화면이 잠깐 잘려서 나왔다가 정상적으로 출력되는 현상이 있습니다.

     즉, 두 동작 중 하나가 먼저 끝나서 그 화면을 보여주고 그 다음 동작이 끝나면서 정상적으로 출력되는 것 같습니다.

     이 방법을 사용하려면 두 동작이 항상 동시에 작동해서 동시에 보여지도록 해야 하는데 어떻게 해야 될지 모르겠습니다.

 

2. SurfaceView의 width와 height을 match_parent나 wrap_content로 설정하는 방법

    위의 2가지 방법을 사용하면 View의 Size는 화면이 회전하면 자동적으로 View의 Size는 변경이 됩니다.

    문제는 width와 height을 2개 다 match_parent나 wrap_content로 하면 화면이 출력이 안됩니다...

     둘 중의 하나라도 고정된 px 값으로 넣어주면 화면이 나오는데 왜 그런지 모르겠습니다.

 

혹시 위의 2가지 방법말고 다른 방법이나 아니면 저 2가지 방법에 대한 해결법을 알고 계시다면 도와주시면 고맙겠습니다 ㅠㅠ
익명사용자 님이 2015년 8월 10일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...