화면의 크기를 알고싶어요
조회수 4764회
발생하는 문제
n은 화면 상단 픽셀이고 m은 오른쪽의 픽셀인데 제가 아래 코드처럼 오른쪽 상단의 픽셀을 구하려고하는데요. screenWidth랑 screenHeight를 구하는 방법이 있을까해서 질문드립니다.
소스코드
int px = screenWidth - m;
int py = screenHeight - n;
1 답변
-
화면 크기를 알고 싶을땐 getSize를 쓰시면 돼요.
Display display = getWindowManager().getDefaultDisplay(); Point size = new Point(); display.getSize(size); int width = size.x; int height = size.y;
액티비티가 아니면
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); Display display = wm.getDefaultDisplay();
이렇게 쓰시면 되구요. 다른 방법으로는 DispalyMetrics라는게 있는데 이건 크기나 밀도 글씨 크기에 관련된 클래스인데
DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics);
이런 식으로 쓰고 화면의 width를 알고싶으면
Log.d("ApplicationTagName", "Display width in px is " + metrics.widthPixels);
이렇게 쓰시면 되요.
댓글 입력