Passend UIWebView in UITableViewCell

Möchte ich hinzufügen, dass ein UIWebView in eine Zelle. Die HTML-Daten wird sich ändern, und ich rufe reloadData, wenn dies geschieht.

Problem ist, die UIWebView änderungen gut, aber ich kann nicht die UITableViewCell zu entsprechen, die Höhe richtig. Ich habe versucht, und scheiterte an dieser Lösung...

Wenn die webview geladen:

- (void)webViewDidFinishLoad:(UIWebView *)aWebView {
    CGRect frame = aWebView.frame;
    int old_height = frame.size.height;
    frame.size = CGSizeMake(280, 0);
    aWebView.frame = frame;
    float content_height = [[aWebView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"] floatValue];
    frame = aWebView.frame;
    frame.size = CGSizeMake(280, content_height + 20);
    aWebView.frame = frame;
    NSLog(@"SIZES - %i - %i",old_height + 4,(int) frame.size.height);
    if(old_height + 4 != frame.size.height){
        [self.tableView reloadData];
    }
}

Zurückgegeben Höhe für die Zelle:

return webview.frame.size.height + 20;

Nach dem ersten laden der Zelle ist nicht ausreichend dimensioniert werden. Es ist hart, um herauszufinden, wie dies zu tun. Ich muss dehnen Sie den gesamten Inhalt nach unten passt sich eine Zelle.

Danke.

  • Ist es eine einzelne web-Ansicht tableview oder einer pro Zelle? Und ist die Tabelle zusätzliche Zeilen?
  • Es hat 3 Sektionen mit je einer Zeile je. Der mittlere Abschnitt hat die uiwebview.
Schreibe einen Kommentar