Web View crashes



你好,感谢阅读这篇文章,
我正在构建一个简单的应用程序,有2-3个选项卡(视图控制器),第一个是某种转换器(英里到公里),很好,第二个视图控制器必须有一个"webview"元素。所以,当我构建一个单独的应用程序,只有一个视图控制器,(与"import WebKit")它工作得很好:

super.viewDidLoad()
webview.load(URLRequest(url: URL(string: "https://www.google.com")!))

但是,当我将此复制到我的2选项卡应用程序代码下的@super. viewdidload()@行,它崩溃说"线程1:致命错误:意外发现nil,同时隐式展开一个可选值"。

我对这一切都很陌生,所以我不知道如何解决这个问题。我在这个论坛上没有找到类似问题的解决方案。提前感谢!

注。我如何创建web视图-直观地添加它。我看到了通过编码创建它的提示,我会尝试的,谢谢你

最大功率。我在这里添加我的代码:

import UIKit
import SafariServices
import WebKit

extension String {
func toDouble() -> Double? {
return NumberFormatter().number(from: self)?.doubleValue
} }
class ViewController: UIViewController {
@IBOutlet var mileField: UITextField!
@IBOutlet var mileResult: UILabel!
@IBOutlet var meters: UILabel!
@IBOutlet var cmeters: UILabel!
@IBAction func mileButton(_ sender: UIButton) {
let mile: Double = mileField.text?.toDouble() ?? 0
let km = mile * 1.6
let m = km * 1000
let cm = m * 100
meters.text = String(m)+" m"
mileResult.text = String(km)+" km"
cmeters.text = String(cm)+" cm"
}
@IBOutlet var vw: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
vw.load(URLRequest(url: URL(string: "google.com")!)) // this is where I got Fatal error blah blah blah
}
@IBAction func bTapped() {
let vc = SFSafariViewController(url: URL(string: "https://www.apple.com")!)
present(vc, animated: true) // this works fine but I need to use webview element
}
} 

小截图

声明你的两个视图控制器。另外,请将这个类名分配给storyboard中的视图控制器。

https://i.stack.imgur.com/BDoY6.png


class ViewController1: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
}

class ViewController2: UIViewController {

@IBOutlet var webview: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
webview.load(URLRequest(url: URL(string: "https://www.google.com")!))
}
}

最新更新