안드로이드/개발자 일상

안드로이드 실제 디바이스 사이즈 구하기 (xml에 dp값)

차누감 2020. 3. 28. 12:16
반응형

안드로이드 화면 구성에서 화면 사이즈를 알고 싶을 때가 있을 것입니다.

해상도와 dp는 다릅니다.

 

실제 보여지는 화면의 사이즈 (dp)를 구해봅니다. 

MainActivity.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
 
 
public class MainActivity extends AppCompatActivity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
         Display display = getWindowManager().getDefaultDisplay();
         DisplayMetrics outMetrics = new DisplayMetrics ();
         display.getMetrics(outMetrics);
    
         float density = getResources().getDisplayMetrics().density;
         float dpHeight = outMetrics.heightPixels / density;
         float dpWidth = outMetrics.widthPixels / density;
    
         //dp별 layout 별도 적용
         Log.d("Device dp","dpHeight : : "+dpHeight+"  dpWidth : "+dpWidth+"  density : "+density);
 
    }// onCreate()..
}// MainActivity Class..
 
 

구한 값으로 적용을 해봅니다. ( 현재 기기 갤럭시  노트10 )

혹시 디자인 하시는 분이 360 * 640 사이즈로 제작을 해서 주었을 시 아래와 같은 문제가 발생 할 수있다. (노트10 기준)

반응형