Google 애플리케이션에서는 시작시 화면 너비를 결정해야합니다. 우리는 몇 가지 다른 방법 (아래 목록 참조)을 사용하여이 너비를 얻으려고했지만 삼성 기기, 특히 Galaxy 기기가 때때로 잘못된 값을 제공합니다.삼성 기기가 간헐적으로 잘못된 화면 너비를보고합니다.
우리는 1440 x 2560 픽셀의 해상도로 Galaxy s6을 보유하고 있습니다. 대부분의 장치는 1440의 폭을보고하지만 가끔 우리는 다음과 같은 방법으로 폭을 점점 시도 우리에게 1080
의 폭을 줄 것이다 :
1)
getResources().getDisplayMetrics().widthPixels;
2)
WindowManager wm = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Point size = new Point();
display.getSize(size);
3)
WindowManager wm = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
Point size = new Point();
display.getRealSize(size);
그러나 모든 경우에 잘못된 너비가 반환됩니다. 응용 프로그램을 처음 시작할 때 잘못된 값이 안정적으로 표시됩니다. 어떤 도움이라도 대단히 감사 할 것입니다.
특정 모델의 경우 사전에 크기를 알고 있다면 왜 조회해야하며 조회 테이블이나 다른 종류가 필요하지 않습니까? – PmanAce
예, 우리는 그렇게 할 수는 있지만 엄청난 목록을 유지하는 것은 이상적이지 않습니다. –
예, 저는이 같은 문제가없는 몇 가지 사례에 대해서만 이야기했습니다. 그러나 누군가가 해결책을 찾으면 그것을 사용하십시오.:) – PmanAce