保留UIWebView,以后再显示它?

时间:2011-11-23 01:58:50

标签: ios cocoa-touch ipad uiwebview retain

如果我想稍后保留UIWebView以便“重用”,是否可能?例如,假设特定网站上的UIWebView对您的应用程序很重要,但不是唯一的。也许该网站需要一段时间才能加载。当用户离开UIWebView时,我想保留对UIWebView及其内容的引用,因此如果用户决定重新打开webview,那么它就是他或她离开的位置。

我试过这个并不适合我。在我的情况下,在iPad上,有一个部分屏幕UIWebView,我正在保持强烈的参考,如果用户需要,我将呈现全屏模态视图并将该UIWebView引用插入到合成的UIWebView属性中视图控制器。当模态视图全屏显示时,背景只是白色,webview没有显示任何内容,即使我保留指针的现有webview已经有活动。

@interface FullScreenWebView : UIViewController
@property (nonatomic,strong) IBOutlet UIWebView *theWebView;

@interface HalfScreenWebView : UIViewController
@property (nonatomic,strong) IBOutlet UIWebView *aWebView;

//in some other class, pretend halfscreenWebView is an object representing HalfScreenWebView
UIWebView *existingWebView = halfscreenWebView.aWebView;
FullScreenWebView *full = [[FullScrenWebView alloc] initWithNibName:@"FullScreenWebView" bundle:nil];
full.modalPresentationStyle = UIModalPresentationStyleFullScreen;
full.theWebView = existingWebView;
[self presentModalViewController:full animated:YES];

1 个答案:

答案 0 :(得分:2)

您可以使用NSCoding在使用之间归档和取消归档UIWebView,因为它符合NSCoding协议。