Ich habe eine Tabellenansicht mit Zellen, die ein WebView in ihnen haben, ich möchte die Höhe der Zelle mit der Höhe des WebView übereinstimmen. UITableViewCell mit UIWebView Dynamische Höhe
der Code Dies ist ich benutze:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("newsCell") as! NewsTableViewCell
cell.webView.loadHTMLString("test<br>test<br>test<br>test<br>test<br>test", baseURL: nil)
cell.webView.delegate = self
var webFrame = cell.webView.frame
var cellFrame = cell.frame
cell.frame = CGRectMake(cellFrame.origin.x, cellFrame.origin.y, cellFrame.width, webFrame.height + 20)
cell.backgroundColor = UIColor.redColor()
return cell
}
func webViewDidFinishLoad(webView: UIWebView) {
println("finished loading")
var frame = webView.frame
frame.size.height = 1
webView.frame = frame
var fittingSize = webView.sizeThatFits(CGSizeZero)
frame.size = fittingSize
webView.frame = frame
var height: CGFloat = frame.height
println(height)
webView.frame = CGRectMake(frame.origin.x, frame.origin.x, frame.size.width, frame.size.height)
newsTable.beginUpdates()
newsTable.endUpdates()
}
Und das ist das Ergebnis: http://postimg.org/image/8qew1lqjj/
Die WebView ist die richtige Höhe, aber die Zelle nicht, wie kann ich dieses Problem beheben?
Aus irgendeinem Grund die Tabelle wie folgt erscheint: http://postimg.org/image/wp43uf291, wissen Sie, warum? – OmerN
@OmerN, meinst du schwarze Linien? Ich denke, es ist das gleiche Problem wie in [dieser Frage] (http://stackoverflow.com/q/21420137/683917). – ifau
Das funktioniert, hat aber ein Problem. Der Aufruf loadHTMLString kann eine Web-Content-Anfrage enthalten, wenn der Traffic verdoppelt wird und die App bei langsamem Web-Aufruf langsam wird. – Ripley