我遇到了UIWebView的問題。我想呈現我自己的HTML代碼。當我添加一個webview作爲子視圖並放入一些html代碼時,它呈現得很好。當使用drawRect方法得到一些優化的tableview單元圖時,彈出問題。通過這種方式繪製UIView子代很有效。甚至可以使用loadRequest方法加載URL,設置符合UIWebViewDelegate協議的委託,並在調用webViewDidFinishLoad時使用setNeedsDisplay重繪表格單元格。它確實顯示,但是當涉及到loadHTMLString時,什麼也沒有顯示出來,只有一個白色矩形。由於性能原因,我必須在drawRect方法中執行繪圖。使用loadHTMLString在drawRect中呈現UIWebView
任何想法?在此先感謝 尼克
範例片段的HTML代碼代碼由一個UIWebView加載:
NSString *html = @"<html><head><title>My fancy webview</title></head><body style='background-color:green;'><p>It somehow seems<h2 style='color:black;'>this does not show up in drawRect</h2>!</p></body></html>";
[webView loadHTMLString:html baseURL:nil];
片段爲drawRect方法:
- (void)drawRect:(CGRect)aRect {
CGContextRef context = UIGraphicsGetCurrentContext();
[[webView layer] renderInContext:context];
}
您可以將Web視圖渲染爲圖像的圖形上下文,保留該圖像並將其添加到表視圖單元格的視圖層次結構中,或者根據您的需要將其繪製到drawRect中的圖形上下文中。 – Heiberg