2012-04-17 4 views
1

그래서 이름없는 앱에서 UIWebView 내부에서 실행되는 전체 화면 광고를 만들고 있습니다. 기본적으로 뷰포트 메타 태그는 전혀 수정할 수 없으므로 내 앱이 전체 화면이어야하고 웹보기가 스크롤되지 않도록 1023x767이어야합니다. 그것은 이상한 버그를 유발하는 하나의 시나리오를 제외하고는 95 %의 시간 동안 작동합니다. 가로로 시작한 다음 가로로 회전하면 뷰포트보다 큰 것처럼 웹 뷰 주변에서 응용 프로그램을 스크롤 할 수 있습니다. 나는 방향 변경 이벤트를 감지하고iOS iPad의 UIWebView 창 너비와 높이

@media only screen and (orientation: portrait) { 
    html, body { 
     width: 767px; 
     height: 1023px; 
     overflow:hidden; 
     position:relative; 
    } 
} 

@media only screen and (orientation:landscape) { 
    html, body { 
     width: 1023px; 
     height: 767px; 
     overflow:hidden; 
     position:relative; 
    } 
} 

, 내가 받고 있어요 : 다음 CSS에서

, 내가 가진 그러나

$('html').width() = 767 
$('html').height() = 1023 
$('body').width() = 767 
$('body').height() = 1023 

, 나는이납니다 발견 분명히 문제가 같은 시간에,하지만 난 이유 또는 해결 방법을 알아낼 수 없습니다

$(window).width() = 1023 
$(window).height() = 1365 

어떤 생각을? 누군가!? :-)

+0

유일한 문제가 스크롤하는 경우 webView의 scrollView에서 스크롤을 비활성화하지 않는 이유는 무엇입니까? 그런 다음 문서 크기에 관계없이 콘텐츠 만 표시됩니다. –

+0

내 앱이 아닙니다. 나는 그 안을 그냥 달린다. – normmcgarry

답변

1

뷰포트가 장치 너비보다 실제로 1px 작게 설정되어 있기 때문에 더 많은 조사를 통해 veiwport 메타 태그를 사용하여 width = device-width를 설정할 수 없었던 이유가 있습니다. 그런 다음, 그 죽은 픽셀 영역의 뷰포트를 스크롤해야합니다. 앱이 왼쪽 및 오른쪽 스 와이프를 감지하여 여러 웹보기간에 변경되므로 "e.preventDefault()"를 수행하여 스크롤을 사용 중지 할 수 없으며 앱에서 스 와이프 기능을 최대 1px까지 스크롤 할 수 있습니다.

길고도 짧은 이야기, 내가 할 수 있었다 :

뷰포트 = (장치 폭-1)과이 문제를 해결했습니다. 앱 사람들은 이것이 가능하다는 것을 모르고 있었고 이런 일이 가능할지는 확신 할 수 없었습니다. 그러나 그것은 당신이 그 데드 스페이스에 갇히지 않았기 때문에 여전히 스 와이프가 발생할 수 있도록했습니다.