2012-07-03 4 views
3

iOS 응용 프로그램의 UIPopoverController에 UIWebView를 표시하고 있습니다.UIWebView in UIPopover - 보고서 크기

iPad에서 창 크기가 980x1532라고보고되었습니다. 따라서 외부 페이지를로드 할 때 980 픽셀 폭으로로드 및 렌더링됩니다.

외부 웹 사이트에서이 웹보기를 누르면 서버의 코드를 수정할 수 없습니다.

iPad UIWebView가 popover (320x480)의 크기를보고하도록 설정하는 방법이 있습니까?

+0

는 왜있는 UIWebView 그 크기를보고해야합니까 이하 내 문제를 해결? popover를이 크기로 강요하려고합니까? –

+0

수정. 이 웹 사이트는 반응 형 js/css를 가지고 있으며 사용자가 320x480 창에서 렌더링하면 훨씬 좋을 것입니다. –

+0

그러면 웹보기에 의존하기보다는 생성시 팝업 크기를 설정해야합니다. –

답변

14

문제는 아마도 HTML에 있습니다. 이 페이지에는 uiWebView 콘텐츠 크기를 장치 크기와 뷰 크기를 설정하는 content = "width = device-width"세트가 있습니다.

체크 아웃이 질문에 displaying Wiki mobile page in UIWebView within UIPopoverController

두 번째 대답은이 코드는

- (void)webViewDidFinishLoad:(UIWebView *)aWebView { 
if(aWebView.frame.size.width < aWebView.window.frame.size.width) { 
    // width=device-width results in a wrong viewport dimension for webpages displayed in a popover 
    NSString *jsCmd = @"var viewport = document.querySelector('meta[name=viewport]');"; 
    jsCmd = [jsCmd stringByAppendingFormat:@"viewport.setAttribute('content', 'width=%i, initial-scale=1.0, user-scalable=1');", (NSUInteger)aWebView.frame.size.width]; 
    [aWebView stringByEvaluatingJavaScriptFromString:jsCmd]; 
} 
// stop network indicator 
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO; 

}

+0

감사합니다 - 작품! –

+0

Brilliant! 나는 당신이이 해결책을 어떻게 생각해 냈는지 궁금합니다. –

+1

제비 뽑기와 제비 뽑기와 많은 것을 시험해보고있는 물건 : D 나는이 대답이 받아 들여지기를 바란다 :) –