0

uiwebviewでepubを表示すると、480ピクセル未満の行があることがわかります。コンテンツサイズの高さを450ピクセルに制限し、50ピクセルの下マージンを追加するにはどうすればよいですか.現在、次のコードを使用して合計パディングを追加しています. uiwebview のコンテンツの高さを制限するには?

NSString *padding = @"document.body.style.padding='15px 15px 15px 15px';";
[webView stringByEvaluatingJavaScriptFromString:padding];

私を助けてください

コンテンツサイズを取得するためにこのコードを試しましたが、14783 の値が返されました

webView.scrollView.ContentSize.height;次に、14783を取得します

4

2 に答える 2

1

これを使ってみてください...

CGSize contentSize = CGSizeMake([[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollWidth;"] floatValue],
                                [[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight;"] floatValue]);

編集された.......

- (void)webViewDidStartLoad:(UIWebView *)webView
{
    CGRect frame = webView.frame;

    frame.size.height = 5.0f;

    webView.frame = frame;
}


- (void)webViewDidFinishLoad:(UIWebView *)webView
{
    CGSize mWebViewTextSize = [webView sizeThatFits:CGSizeMake(1.0f, 1.0f)];  // Pass about any size

    CGRect mWebViewFrame = webView.frame;


    mWebViewFrame.size.height = mWebViewTextSize.height;

    webView.frame = mWebViewFrame;


    //Disable bouncing in webview
    for (id subview in webView.subviews)
    {
        if ([[subview class] isSubclassOfClass: [UIScrollView class]])
        {
            [subview setBounces:NO];
        }
    }
}
于 2013-06-03T04:49:46.180 に答える
0

このコードを試してください:

- (void)webViewDidFinishLoad:(UIWebView *)webView1
{
      NSString  *totalHeight;

        totalHeight = [webView stringByEvaluatingJavaScriptFromString:@"document.getElementById(\"foo\").offsetHeight;"];

         if([totalHeight intValue] >= 450)
         {
            [webView setFrame:CGRectMake(0, 0, webView.frame.size.width, 450)];
         }
         else
         {
          [webView setFrame:CGRectMake(0, 0, webView.frame.size.width, [totalHeight floatValue])];
         }
}

お役に立てば幸いです。

于 2013-06-03T04:52:01.560 に答える