首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >预压UIWebView

预压UIWebView
EN

Stack Overflow用户
提问于 2016-03-01 10:51:02
回答 1查看 599关注 0票数 1

我尝试在代码中预加载UIWebView,但没有任何结果。我不知道密码里出了什么问题。

第一UIViewController

代码语言:javascript
复制
func viewDidLoad(){
let gallery = storyboard?.instantiateViewControllerWithIdentifier("Gallery") as! GalleryViewController

gallery.loadwWebView()
}

在第二个UIViewController中

代码语言:javascript
复制
func loadwWebView(){
let webView = UIWebView(frame: CGRect(x: 0, y: 0, width: view.bounds.size.width, height: view.bounds.size.height))

webView.loadRequest(NSURLRequest(URL: NSURL(string: "https://www.google.com")!))

self.view.addSubview(webView)

}

我选择了以编程方式创建UIWebView方式,因为如果我使用@IBOutlet,它就会崩溃。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-01 19:36:51

问题是,您正在实例化一个图库,这反过来会创建一个web视图,但是gallery是一个局部变量,当它超出作用域时将被释放。

您需要保持对此视图控制器的引用(例如,使其成为当前视图控制器的属性)。如果这样做,则需要确保在转换到此视图控制器时,不使用segue (因为这将创建第二个视图控制器的第二个实例),而是以编程方式转换到已经实例化的视图控制器。

您还可能希望保存对添加到第二个视图控制器的视图层次结构中的web视图的引用,因为否则您将无法再次引用它(或者至少在不对子视图进行一些繁琐的枚举的情况下)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35720946

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档