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

각 다른 스크린 사이즈마다 레이아웃 적용에 관하여..

0 추천

안드로이드 레이아웃 배치때매 애먹고 있어서 조언좀 듣고자 글을 올리게 되었습니다. 지금 constraint layout을 사용하여 배치하고 있는데 사진을 보시는바와 같이 작은 화면 휴대폰에선 레이아웃이 그대로 나오기는 하나 공간이 많이 짤려서 나옵니다. 여기서 조금만 더 추가하면 밑에는 짤려서 나올까봐 걱정이에요. ㅠㅠ

그에 비해서 큰화면 휴대폰은 제가 의도한 대로 잘 나오구요. 이럴 경우는 어떻게 해야할까요? 안드로이드 각 화면 사이즈마다 레이아웃을 설정할수 있나요..?

안드로이드 스튜디오 constraint Layout 레이아웃

 

큰 휴대폰 화면

 

작은 휴대폰 화면

hohuns17 (150 포인트) 님이 2021년 9월 28일 질문
이게 맞는 답인지는 모르겠지만 해상도별로 xml파일을 관리 할수있는데 그걸 참고해보시면 어떨까요

1개의 답변

0 추천
 
채택된 답변
네. 가능합니다. 해상도에 따라 다른 레이아웃을 제공해 주면 됩니다. 아래 링크를 읽어보시면 가이드가 나옵니다.

https://developer.android.com/training/multiscreen/screensizes

그리고 님이 디자인하는 것과 같은 화면은 보통은 ScrollView를 최상위에 배치시켜서 화면이 작을 때는 스클롤이 되도록 해줍니다.
화면 사이즈별로 레이아웃을 제공하는 건 한두개의 화면일 때는 유용하지만, 관리해야할 화면이 많아지면 굉장히 번거로운 작업이 되기 쉽습니다. 왜냐하면 안드로이드는 수천 종의 디바이스가 존재하고 해상도라는 것이 제각각인 경우가 많습니다. 화면은 엄청 큰데 저해상도인 경우도 있고, 반대로 화면은 엄청 작은데 고해상도인 경우도 있습니다. 결국 모든 디바이스를 지원하는 건 굉장히 어려운 문제라고 보여집니다. 따라서 어느정도 선에서 지원할 것인지를 결정하셔야 합니다.
spark (227,530 포인트) 님이 2021년 9월 28일 답변
hohuns17님이 2021년 9월 29일 채택됨
스크롤뷰에 모든 버튼이나 이런걸 다 담는다는 뜻인가요?
<ScrollView
   layout_width="match_parent"
   layout_height="match_parent"
   fillViewport ="true" <!-- **** 중요 **** -->
>
 < !-- 여기에 현재 레이아웃을 배치 -->
    
</ScrollView>
...