[안드로이드] 위젯에서의 가로모드 레이아웃 지원 여부 정하기

 안드로이드의 위젯을 개발하는데 있어서 세로모드만 지원하면 될 지, 가로모드를 따로 만들어야 할지에 대해서 고민하는분들이 계실 것 같아서 이 글을 작성합니다.

 디바이스나 설치되어 있는 런처에 따라서 다를 수도 있지만
보통은 홈 화면에서 가로모드를 지원한다고 가정하면 가로모드에 대해서 따로 레이아웃을 만들어야 할지 고민이 될 것입니다. 세로모드만 만든 상태에서 위젯을 설치하고 가로모드로 테스트를 해봤을 때 자동으로 레이아웃이 잘 변환되고 나타나면
괜찮은데, 실제 가로모드를 해보면
세로가 좁아지고 가로가 넓어지기 때문에
생각한 것보다 제대로 안 나오는 경우도 많이 보일 것입니다. 그래서
안드로이드 마켓 위젯 등을 보면 가로모드를 따로 지원하는 경우도 많이 보입니다.


 여러 가지로
테스트 한 결과 안드로이드 공식 개발가이드
있는 최소 높이 사이즈에 맞춰 높이를 정하면 가로모드 레이아웃을 따로 만들지 않아도 문제가 발생하지 않았습니다.
그 공식은 (number of
cells * 74) – 2
입니다. 예를
들어 세로를 바둑판 2개 사이즈 높이로 만든다고 하면 높이는 최대
146dp
를 넘으면 안 되는 것입니다. 146dp 로 만들게 되면 제가 봤던 모든 디바이스에서는
세로모드에서 높이가 작아 보였지만 가로 모드에서 깨지지 않고 정상적으로 보이게 됩니다. 만약 이 높이를
넘어간다면 가로모드 레이아웃을 따로 만들어야 좋을 것입니다.

 

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다