안드로이드

안드로이드 레이아웃 width, height 구하기!

알통몬_ 2018. 5. 10. 12:43
반응형


공감 및 댓글은 포스팅 하는데

 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 

도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 

만들어 나가겠습니다^^

 


안드로이드에서 레이아웃의 width 와 height가 필요한 경우가 있습니다.

이런 경우 자바 코드에서  width 와 height 를 구해야 하는데요.


View view = findViewById(R.id.mapConstLayout);
pointX = view.getWidth();
pointY = view.getHeight();

보통 위 같은 방법으로 구하는데,

onCreate() 메서드 아래에서 저 코드를 실행하면 안타깝게도

pointX 와 pointY 값이 0으로 나오게 됩니다.


이유는 onCreate() 메서드의 경우는 레이아웃이 그려지기 전에 호출되기 때문에

xml에 작성된 레이아웃을 크기를 구할 수가 없는 거죠.


때문에 

onWindowFocusChanged() 메서드를 오버라이딩해서 값을 구해야 합니다.


@Override
public void onWindowFocusChanged(boolean hasFocus) {
View view = findViewById(R.id.mapConstLayout);
pointX = view.getWidth();
pointY = view.getHeight();

}


별로 어렵지 않죠?

이상으로 안드로이드 레이아웃 width, height를 구하기! 에 대해 알아보았습니다.

반응형