화면의 크기를 알고싶어요


발생하는 문제

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

소스코드

    int px = screenWidth - m;
    int py = screenHeight - n;
  • 2016년 06월 01일에 수정됨
    루비와 파이썬을 좋아합니다. 새로운 언어를 배우는것도 좋아해요. 모바일 게임도 조금 만들어 봤습니다.
  • 2016년 01월 05일에 작성됨

조회수 246


1 답변


좋아요
0
싫어요
채택취소하기

화면 크기를 알고 싶을땐 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);

이렇게 쓰시면 되요.

  • 2016년 01월 05일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close