2014-10-28 3 views
-1

나는 Java 클래스에서 안드로이드로 disply 크기를 얻으려고합니다.안드로이드에서 실제 디스플레이 크기를 얻는 방법

display.getSize(size); 
display.getRealSize(size); 

하지만 모두 정확한 폭 결과이지만 높이 값이 하이이고를 반환 : 제가 방법을 사용 하였다. 누군가에게 제안을했는데 왜 잘못된 결과가 나옵니까?

Gruß, 앙드레

답변

0

시도 :

DisplayMetrics dm = getResources().getDisplayMetrics(); 
int w = dm.widthPixels 
int h = dm.heightPixels 

그것이 도움이되기를 바랍니다.

0

당신은 DisplayMetrics class

DisplayMetrics dm = new DisplayMetrics(); 
    getWindowManager().getDefaultDisplay().getMetrics(dm); 
    int width = dm.widthPixels; 
    int height = dm.heightPixels; 
0

에서 화면에 대한 정보를 얻을 수 있습니다 그것은 꽤 잘 여기 문서화 http://developer.android.com/reference/android/view/Display.html

의 getSize()는

픽셀, 디스플레이의 크기를 가져옵니다.

이 메서드에서 반환되는 크기는 반드시 디스플레이의 실제 원시 크기 (기본 해상도)를 나타내는 것은 아닙니다. 리턴 된 크기 은 이 항상 표시되는 특정 시스템 데코 레이션 요소를 제외하도록 조정될 수 있습니다. 작은 디스플레이 용으로 원래 설계된 이전 응용 프로그램 인 과의 호환성을 제공하도록 확장 될 수도 있습니다.

getRealSize()

모든 윈도우 장식 감산 또는 호환성 스케일 팩터를 적용하지 않고 디스플레이 의 실제 크기를 가져.

크기는 디스플레이의 현재 회전을 기준으로 조정됩니다.

창 관리자가 더 작은 디스플레이를 에뮬레이트 할 때 실제 크기는 화면의 물리적 크기보다 작을 수 있습니다 (adb 셸 display-size를 사용).

중요한 부분을 굵게 표시했습니다.

관련 문제