iPhone / iPad UIWebView需要是活动视图来渲染吗?

时间:2012-03-24 17:21:09

标签: iphone ios uiwebview

我需要将屏幕外的网页呈现为位图,然后向用户显示位图。这可以通过主线程上的简单代码完成,如下所示:

NSString *urlAddress = @"http://www.google.com";
NSURL *url = [NSURL URLWithString:urlAddress];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[offscreenWebView loadRequest:requestObj];

或者我是否需要将UIWebView附加到活动视图?

在Android中,除非视图是活动视图的一部分,否则Web视图似乎不会呈现。因此,要在Android中执行此任务,我需要创建一个视图层次结构,为Web渲染器创建一个活动视图,然后在其上放置另一个视图以让它在屏幕外绘制。

1 个答案:

答案 0 :(得分:5)

我自己一直在努力解决这个问题。除非将UIWebView添加到UIWindow对象,否则它不会呈现。但是,这不一定是您用来显示应用程序的窗口。你可以创建一个单独的UIWindow对象,并将UIWebView附加到它,它将呈现得很好。但是,UIWebView渲染是一个缓慢的过程,因此它在准备好之前会有一个短暂的延迟。完成后,它会将webViewDidFinishLoad方法激活到其委托。