0

このようなUIWebViewを作成しています

    self.webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 300)];
    NSString *s=[arrayWithTwoStrings objectAtIndex:0];
    [self.webView setDelegate:self];
    self.webView.backgroundColor=[UIColor clearColor];
    self.webView.opaque=NO;
    self.webView.scrollView.scrollEnabled=NO;
    [self.webView loadHTMLString:s baseURL:nil];
    self.webView.contentMode=UIViewContentModeScaleAspectFit;
    self.webView.autoresizesSubviews = YES;
    [self.webView setScalesPageToFit:FALSE];
    [self.webView setAutoresizingMask:UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight];
    [self.webView sizeToFit];
    CGFloat totalHeight = self.webView.frame.origin.y+self.webView.frame.size.height+30;
    [self.webView setFrame:CGRectMake(0,0,320, totalHeight)];

コンテンツに基づいて webview の高さを合わせていません。

検索でいくつかの手法を試しましたが、うまくいきませんでした

4

1 に答える 1

0

ユーザーが Web ビュー内で垂直にスクロールする必要がないように Web ビューの高さを調整しようとしている場合は、HTML 文字列が Web ビューに読み込まれた後に高さを取得する必要があります。

HTML 文字列の読み込みが完了したら Web ビューのデリゲートを実装し、スクロール ビューの高さに基づいて高さを計算します。

- (void)webViewDidFinishLoad:(UIWebView *)aWebView {
    aWebView.frame = CGRectMake(CGRectGetMinX(aWebView.frame), CGRectGetMinY(aWebView.frame), CGRectGetWidth(aWebView.frame), aWebView.scrollView.contentSize.height);
}
于 2013-05-27T02:20:54.993 に答える