Android 태블릿 (Nexus 7)의 Chrome에 표시 될 때 CSS 미디어 쿼리를 사용하여 화면 크기 및 방향 변경에 올바르게 응답하는 기본 웹 페이지가 있습니다. WebView에서 동일한 페이지를 표시 할 때 화면 너비에 따라 미디어 쿼리가 작동하지 않습니다. 나는 웹보기를 설정하고있어 어떻게 여기입니다 :Android WebView 및 CSS 미디어 쿼리
WebView webView = (WebView) findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
webView.loadUrl("http://10.0.1.8:8080/cbc/test");
웹보기가 올바르게 다음 미디어 쿼리의 동작에 따라 방향 변경 감지 : 제대로 작동하지 않습니다 화면 크기를 사용하여
@media only screen and (orientation: portrait) {
.landscape { display: none; }
}
@media only screen and (orientation: landscape) {
.portrait { display: none; }
}
미디어 쿼리를 다음 자바 스크립트에 따르면 방향 변경을 통해 화면 너비와 높이가 일정하게 유지되기 때문입니다.
$("#dimensions").empty();
$("#dimensions").append($("<div>Width: " + screen.width + "</div>"));
$("#dimensions").append($("<div>Height: " + screen.height + "</div>"));
$("#dimensions").append($("<div>Depth: " + screen.pixelDepth + "</div>"));
나는 de "오리엔테이션 변경"이벤트. Android에서 Chrome을 실행하면 기기 방향을 고려하여 너비와 높이 값이 올바르게 표시됩니다. WebView 내부에서 실행하면 방향에 관계없이 폭과 높이가 일정하게 유지됩니다.
예상되는 동작을 얻으려면 WebView에 적용해야하는 구성이 있습니까?
문제는 방향 변경에 걸쳐 폭과 높이 쿼리를 추적 관련이있다. 픽셀 밀도를 기반으로 선택하면 도움이되지 않습니다. –