MKwebview:意外地找到nil,同时隐式展开一个Optional值

时间:2019-09-16 11:09:31

标签: ios swift xcode

我通过main.storyboard向我的视图控制器添加了一个活动指示器,并通过拖放方法将其放入我的视图控制器中,但是当我尝试使用addSubView做某事时,出现此错误。

Thread 1: Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value 

在线:view.addSubview(ActInd)

该项目在Swift 5.0和Xcode 10.3上运行。切换回Swift 4.2没什么区别。我可以调试该应用程序,但是在编写代码时会崩溃

import UIKit
import WebKit

class ViewController: UIViewController, WKNavigationDelegate {
    var webView: WKWebView!

    @IBOutlet weak var ActInd: UIActivityIndicatorView!

    override func loadView() {
        webView = WKWebView()
        webView.navigationDelegate = self

        view = webView
    }

    func loadPage(){
        let url = URL(string: "https://gelrenieuws.nl")!
        webView.load(URLRequest(url: url))
        webView.allowsBackForwardNavigationGestures = true
    }

    override func viewDidLoad() {
        super.viewDidLoad()

        view.addSubview(ActInd)
        ActInd.startAnimating()
        ActInd.hidesWhenStopped = true

        loadPage()
    }

    func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
       // Code runs when its finnished
        ActInd.stopAnimating()



    }    
}

我想在页面加载到Webview中时显示活动指示器

1 个答案:

答案 0 :(得分:1)

似乎id2var ActInd: UIActivityIndicatorView!

首先,您应该检查是否在情节提要中正确定义了nil。可能您没有将项目从情节提要(xib)文件拖到快速的ViewController文件中。

别忘了使用超级方法。

ActInd: UIActivityIndicatorView