首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >webView在iOS 8中为零,但在使用xib的iOS 9中不为零

webView在iOS 8中为零,但在使用xib的iOS 9中不为零
EN

Stack Overflow用户
提问于 2016-07-22 15:05:29
回答 3查看 630关注 0票数 0

为什么在iOS 8中webView为空,而在iOS 9中不为空?

我应该如何在iOS 8中使用webview?以下是代码(swift 2.2)

viewController类中:

代码语言:javascript
复制
@IBOutlet weak var webView: UIWebView!

override func viewDidLoad() {
    super.viewDidLoad()
    
    self.webView?.delegate = self   // without '?' in iOS 8 crash
                                    // in iOS 9 not crash
    
    // debug code
    if let webView = self.webView { // iOS 8 nil
        print("\(webView)")         // iOS 9 not nil
    }

    //...
}

谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-07-23 22:06:18

代码语言:javascript
复制
class ViewController: UIViewController, UIWebViewDelegate {
@IBOutlet weak var webView: UIWebView!

let url = NSURL(string: "http://google.com")


override func viewDidLoad() {
    super.viewDidLoad()

    self.webView.delegate = self

    let req = NSURLRequest(URL : url!)
    self.webView.loadRequest(req)
}

func webViewDidStartLoad(webView: UIWebView) {
    print("start loading")
}

func webViewDidFinishLoad(webView: UIWebView) {
    print("finish loading")
}

//...

}

如下所示,此代码可以在iOS8和iOS9中完美运行

票数 0
EN

Stack Overflow用户

发布于 2016-07-28 23:11:04

一种解决方案:

代码语言:javascript
复制
@IBOutlet weak var webViewXib: UIWebView!
var webView: UIWebView!

override func viewDidLoad() {
    super.viewDidLoad()

    if let _ = self.webViewXib {
    self.webView = self.webViewXib
    } else {
        self.webView = UIWebView()
        self.webView.frame = self.view.bounds
        self.view.addSubview(self.webView!)
    }
    self.webView!.delegate = self    

    // ...
}
票数 0
EN

Stack Overflow用户

发布于 2017-04-19 04:48:41

问题在于实例化View Controller的方式,您可能会将其实例化为:

MyViewController *myViewController = [[MyViewController alloc] init]

这样,您就不会在viewDidLoad中准备好视图,相反,您应该尝试:

MyViewController *myViewController = [[MyViewController alloc] initWithNibName:"MyViewController" bundle:nil]

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

https://stackoverflow.com/questions/38520219

复制
相关文章

相似问题

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