2012-06-04 12 views
13

プログラムでwebviewを作成しましたが、このビューでスクロールを有効にできません。iOSのUIWebViewでスクロールできない

スクロールを有効にするにはどうすればよいですか?

UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(0,40, 325, 1000)]; 
    webView.contentMode = UIViewContentModeScaleAspectFit;  
    [webView setBackgroundColor:[UIColor clearColor]]; 
    [webView loadHTMLString:html baseURL:nil]; 
    [self.view insertSubview:webView atIndex:0]; 

ありがとうございました!スクロールを有効にするに

+0

あなたがコンテンツをスケール&フィット(たとえば「UIViewContentModeScaleAspectFit'」)に設定していると、ページ全体が画面に収まらずスクロールしないのですか? –

+0

@ MichaelDautermann.. "UIViewContentModeScaleAspectFit"を無効にしようとしましたが、まだスクロールできません。 webViewだけが – Santhosh

+0

@ skokal01をバウンスするので、すべてのコンテンツが画面に表示されるので、 – Otium

答えて

23

webview.scrollView.scrollEnabled = TRUE; 

、代わりにこれを書いて、この

webView.contentMode = UIViewContentModeScaleAspectFit; 

書き込み、

webview.scalesPageToFit = TRUE; 
+0

@krunal ...それはうまくいきませんでした。今、私のHTMLページは画面の1/4のサイズに縮小されていますが、私もズームできません:( – Santhosh

+0

[UIWebView Screenshot]のスクリーンショットを参照してください。 – Santhosh

+1

CGRectMake(0、0、770、960); ' – Krunal

0

にInterface Builderから削除すると、コードが私のためにやったを通じて追加。 IBで何らかの理由でスクロールしていなかった。

UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 64, 320, 50)]; 
[self.view addSubview: webView]; 
0

これらは可能な解決策です。

i)あなたの予想よりも大きなサイズのウェブビュー、またはあなたのコンテンツがウェブビューのサイズより小さい可能性があります。

2)以下の方法を実装します。

func webViewDidFinishLoad(webView: UIWebView) 
{ 
    appDelegate.hideLoadingView() 

    let res: NSString = webView.stringByEvaluatingJavaScriptFromString("document.body.offsetHeight;")! 
    let h: CGFloat = CGFloat(res.integerValue) 
    agreementContentView.scrollView.contentSize = CGSizeMake(webView.frame.size.width, h + 50); // Offset if required 
} 
関連する問題