화면의 크기를 알고싶어요

조회수 4752회

발생하는 문제

n은 화면 상단 픽셀이고 m은 오른쪽의 픽셀인데 제가 아래 코드처럼 오른쪽 상단의 픽셀을 구하려고하는데요. screenWidth랑 screenHeight를 구하는 방법이 있을까해서 질문드립니다.

소스코드

    int px = screenWidth - m;
    int py = screenHeight - n;

1 답변

  • 좋아요

    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);
    

    이렇게 쓰시면 되요.

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)