안드로이드 개발 질문/답변
(글 수 45,052)
480 x 800 기본폰 과 갤럭시 탭 을 구분할려고 하는데요
어떤 방법이 있나요?
조언 부탁드립니다.
감사합니다.
2012.11.13 11:38:05
// if (기본폰) {
// setContentView(R.layout.activity_main_기본폰);
// }
// else if (갤럭시탭?) {
// setContentView(R.layout.activity_main_갤럭시탭);
// }
저 같은 경우는 두개로 나눠서 작업 합니다
2012.11.13 13:16:25
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
온크리에이트에 이렇게 선언해 주시고요
if (metrics.ydpi == 306.71698f) {
setContentView(R.layout.activity_main_s3); //갤럭시3
}
else if (metrics.ydpi == 318.7451f) {
setContentView(R.layout.activity_main_gn);//갤럭시 넥서스
}
이렇게 레이아웃을 타게 되는거죠 해당 기기마다 다르거든용 ㅋㅋ 근데 제 방법이 정확한건 아니예요 더 좋은 방법 찾으시면 그렇게 적용해 보세요
2012.11.13 13:51:55
투지정호 님과 같은 방식으로 사용할 경우에는 레이아웃 자체가 두개가 되기 때문에 용량면에서 비효율 적이라 생각됩니다.
제가 쓰는 방식은 커스텀 컴포넌트들을 만들어서 레이아웃에 적용하면 해상도에 따라서 사이즈가 자동으로 변경되기 때문에
개발 및 유지보수 측면에서 많이 편합니다. 커스텀 컴포넌트를 알아보세요~~