안녕하세요. 이번에 정식적으로 앱개발 해보려고 합니다.
안드로이드 앱 개발시 해상도 고려해야 하는 사항에 대해 궁금합니다.
1. 갤럭시S3 (1280 X 720) 를 타켓으로 개발하게 되면 480X800 해상도에 호환이 되는지 궁금합니다.
또한 타켓을 480X800 로 했을 때 1280 X 720에서 이미지 등이 잘 보이는지 궁금합니다.
2. 만약 작업을 해줘야 한다면 해상도 크기별로 이미지 작업을 한다음에 resource/ hdpi, mdpi 등 폴더 넣어줘야 하는지 궁금합니다.
3. 이미지가 깨지는 문제를 방지하여 나인패치를 적용한면 된다고 하는데요. 나인패치로 이미지를 만들게 되면
이미지를 여러개 안만들어도 되는지 궁금합니다.
4. 갤탭에서 사용할 수 있게 개발하려면 위에 사항으로 가능한지요? 아니면 갤탭용을 따로 개발해야하는지요? 보편적으로 사용하는 방식은 어떻게 되나요?
5. 전체적으로 주력상품(S3, 옵뷰, S2, 베가레이서 등) 의 해상도를 지원하려면 위에 있는 사항을 고려하면 되는것인지요? 보편적인 방법이 궁금합니다.
감사합니다. 좋은 하루 되세요.
안드로이드 개발자입니다.
전 그냥 폴더 구분 안하고 가장 높은 해상도로 디자인을 한 뒤 해상도에 맞게 이미지를 변경해서 만들구요
대표 해상도 3~4가지 정도를 지정해서 레이아웃을 따로 만들어 주고 있습니다.
갤탭에서도 사용할수 있게 하려면 그대로 가도 되겠지만 이미지 흐려지고 깨짐 현상은 피할수가 없을거 같습니다.
탭 디자인을 새로 하셔서 따로 가는 방향으로 가시는게 훨씬 좋을것 같습니다.
1. layout 속성중에 layout_weight 속성을 이용하시면 멀티해상도는 왠만해선 해결됩니다..
일반 단위는 dp(dip) 텍스는 sp 를 사용하셔야 합니다.
(그래야 안드로이드OS에서 해상도에 따라 적절히 조정해 보여줍니다.)
2. 정석(?) 대로라면 hdpi,ldpi,mdpi,xhdpi 모두 이미지를 만들어 주시는 것이 맞습니다.
ldpi는 거이 사용안되고 있다고 보시면됩니다.. (480x800 이하 160dpi)
기본 베이스로 hdpi를 사용하시는것이 요즘 트랜드에는 맞습니다...
3. 나인패치를 요하는 작업이 의외로 없습니다....
기본 위젯에서 background 속성을 사용하신다면 drawable 이미지만 제대로 있다면
기본위젯에 나인패치가 내장 되어 있기 때문에 별도 나인패치 작업 없이
안드로이드 OS에서 적절히 조절해 줍니다.. (background 속성이 아니라면 아마 나인패치를 해주셔야할꺼에요)
4. 1번만 된다면 기종별 해상도별을 가리지 않습니다.
(단 systembar 영역이 있다면 systembar 영역은 사용할 수 없습니다....)
5. 1번만 된다면 왠만해선 문제 없습니다...
// 원본
http://developer.android.com/guide/practices/screens_support.html
// 번역
http://blog.naver.com/PostView.nhn?blogId=kimyow&logNo=50118971189
나인패치를 요하는 작업이 의외로 없다는게...
프로젝트 진행하면 거의 나인패치로 작업을 합니다.
용량문제도 있고, 폰트 사이즈나 이런거 마다 버튼의 크기가 바뀐다던가 , 같은 버튼 이미지인데 text내용만 바꿔서 여려곳에서 쓴다던가
이런식으로 해서 많이 사용하는데요... edittext 이미지 바꿀때도 그렇구요...
hdpi에서도 480*800해상도만 있는게 아니라 기타 다른 해상도도 있어서 더더욱 그렇구요
그리고 background에서 나인패치가 기본적으로 내장되어 있다는말이 무슨말씀인지 모르겠습니다.
기본 background에 이미지를 set하면 나인패치 이미지가 아닐경우는 이미지가 일그러져서 나오는 걸로 알고 있습니다.
OS에서 나인패치 작업을 자동으로 해주는건 아닐걸로 알고 있습니다.
1. 개발할때 어떻게 개발하셨는지에 따라 다릅니다(정확히는 해봐야 알죠)
2. dp수치를 잘 썼으면 이미지만 추가해도 대부분 됩니다.
3. 나인패치를 쓰면 대부분 하나의 이미지로 됩니다. 나인패치로 해결 안되는 경우도 있구요
4. 갤탭처럼 화면 비율이 다른 녀석은 대부분 별도 레이아웃 처리를 해줘야 하는 부분이 있습니다.
5. 보편적인 방법이라는게 없습죠
대부분 가변사이즈로 나인패치로 해서 작업하고
작은 화면에서는 스크롤 넣거나 크기 줄여서 별도 레이아웃 넣고
변태들(?)은 따로 레이아웃 작업 해주고
다그런게죠 -_-;