0

ロードが完了した後、webViewのサイズが正しく変更されません。私はこのコードを試しました。

- (void)webViewDidFinishLoad:(UIWebView *)webview {
    CGRect frame = webView.frame;
    frame.size.height = 1;
    frame.size.width = screenWidth;
    webView.frame = frame;
    CGSize fittingSize = [webView sizeThatFits:CGSizeZero];
    frame.size = fittingSize;
    webView.frame = frame;
    [bodyScroll setContentSize:CGSizeMake(screenWidth, webView.frame.origin.y + webView.frame.size.height+keyboardRectY+60)];

それはscreenWidthを超えて幅を拡大しているので、私のコンテンツは私が望まないビューサイズを超えて水平方向に拡大します。

変化

CGSize fittingSize = [webView sizeThatFits:CGSizeMake(screenWidht, 1)];

同じ状況につながります。

どうすればこれを取り除くことができますか?WebViewの幅は常に画面幅のままにする必要があり、WebViewがコンテンツ全体にほぼ収まるように、コンテンツのサイズに基づいて高さのみを調整する必要があります。

前もって感謝します

4

1 に答える 1

0

のサイズを設定するとframe、前に設定した幅が上書きされます。これはそれであるはずです:

...
CGSize fittingSize = [webView sizeThatFits:CGSizeZero];
fittingSize.width = screenWidth; // Add this
frame.size = fittingSize
...
于 2011-04-25T15:05:00.893 に答える