안드로이드 개발 질문/답변 
    (글 수    45,052)
        	
        
        
    안녕하세요. 화면의 레이아웃을 구성하는 과정에서의 의문사항이 들어 문의 드립니다.
모토로이로 테스트 해본 결과 입니다.
우선 프로젝트를 2개로 나눠서 개발해 본 결과 입니다.
A 라는 프로젝트에는 sdk2.0.1 버전 <uses-sdk android:minSdkVersion="6" />
B 라는 프로젝트에는 sdk1.5 버전 <uses-sdk android:minSdkVersion="3" />
으로 생성하고 화면전체를 가리는 view를 만들고 이 view에 대해
getMeasuredWidth(),  getMeasuredHeight()를 각각 실행하면
A 프로젝트에서는 "480 * 854" 가 출력되며
B 프로젝트에서는 "320 * 569" 가 출렵됩니다.
소스상에서 TypedValue를  사용해서 위치를 잡을려고 하였는데 TypedValue에 의한 값은 sdk버전에 상관없이 똑같이 나오는데, 기기에 따라 getMeasuredWidth()값들이 변경될 것이라는 생각과는 달리 SDK버전에 따라 차이가 보이니 대략난감 하네염;
어느 정도의 차이는 있겠지만 모든 기기에 호환성을 갖춘 레이아웃을 잡을려고하는데 
기준점으로 삼을 만한 사이즈가 있나욤? sdk 버전에 영향을 받지 않고 오로지 기기에 따라서만 유동적으로 변하는 사이즈이거나 고정된 사이즈. 다른 개발자님들은 어플들간의 레이아웃의 호환성을 어떻게 맞추시는지 궁금합니다.
상대적인 위치정보를 구할 수 있는 라이브러리를 직접구현해 놓고 사용하여야 할가요?
                2010.04.30 16:00:39                            
            
                        
            넵 정확한 좌표를 잡을때는 사용하지는 않아욤^^ 
                                
            그저 레이아웃이 크게 어긋나지 않게 대략적인 위치를 잡을려고 해본거죠. 사실 디자인에서는 xml로 대부분 처리가 가능해서 큰 어려움이 없었는데 테스트해보다가 발견해서 궁금해서 올렸어욤
몇가지 더 테스트 해보았는데 sdk버전의 문제라기 보다는 <uses-sdk android:minSdkVersion="3" />에서 설정해 주는 값에 따라 처이가 발생하네요
가령 하나는 2.0.1, 다른 것은 1.5이더라도 uses-sdk android:minSdkVersion="3"을 동일하게 맞춰주면 동일한 결과가 나와 처리하는데에선 문제가 없겠네요.
비율이 1.5로 일정하게 변경된 거 같아서 density에 의심의 가지고 찾다가 발견하게 되었네욤. 말씀해 주신 의견처럼 이 값의 설정값에 따라 density값이 변경되는게 아닌지 의심이 가네욤^^ 열심히 찾아봐야겠네요 
답변 감사드립니다. 오늘 하루 행운이 가득하시길^^











A프로젝트는 160 , B프로젝트는 240으로 설정된 것 같습니다.
메니페스트 파일에
레이아웃 관련해서 말씀드리자면, 좌표를 지정하여 위치를 잡거나 "화면 크기가 A * B 이다"라고 가정하고 레이아웃을 잡는 것은 좋지 않습니다. 여러 레이아웃 클래스를 이용하여 그런 것에 무관하게 동작하도록 만드세요.