我在我的应用中使用UIWebView
来展示内容,但现在我不能再这样做,因为我还需要使用UIScrollView
并且它会产生与滚动相关的冲突。
此外,UIWebView
非常慢。
所以我的问题是:有没有其他方法可以加载包含HTML标签的字符串(strong,p,div等等)?
更新(改进说明)
我的UIVIewController
包含顶部的图片,在此图片下方是标题,标题下方是内容(来自网络的HTML字符串)。问题是当文本太大时,webview会滚动,而不是整个页面。我希望整个页面滚动,而不仅仅是webview。
答案 0 :(得分:1)
你不会比本机UIWebView更快或更好。可能你应该过度思考你的UI / UX。你想用滚动视图中的webview实现什么?
也许归因字符串对您来说已经足够了。仔细看看。 OHAttributedLabel甚至为您解析HTML。
答案 1 :(得分:0)
解决。
-(void)webViewDidFinishLoad:(UIWebView *)webView {
NSString *output = [webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight;"];
int webViewHeight = [output intValue];
//NSLog(@"height: %d", webViewHeight);
if(webViewHeight > 220){
CGRect frame = articleContentWebView.frame;
frame.size.height = webViewHeight;
articleContentWebView.frame = frame;
int scrollViewheight = 416 + (webViewHeight - 220);
[articleScrollView setContentSize:CGSizeMake(320, scrollViewheight)];
}
}
在委托方法webViewDidFinishLoad中,我计算UI的UIWebView内容高度,然后设置UIWebVIew的高度和UIScrollView的高度。