尝试按下按钮更改Web视图URL,但是当我按下它时会崩溃应用程序

时间:2017-03-18 13:28:57

标签: ios swift3 xcode8

所以我试图在Xcode 8中创建一个应用程序基本上我有一个webview和一个带按钮的侧栏我想让这些按钮改变webview但是出于某些原因当我按下它们时应用程序崩溃。

这是代码:

import UIKit

class ViewController: UIViewController {

        @IBOutlet weak var menuView: UIView!
        @IBOutlet weak var leadingConstraint: NSLayoutConstraint!

        var menuShowing = false

        @IBOutlet weak var Webview: UIWebView!

            override func viewDidLoad() {
            super.viewDidLoad()

            menuView.layer.shadowOpacity = 1
            menuView.layer.shadowRadius = 6

            let url = URL(string: "http://www.peulibrary.com/application/")
            Webview.loadRequest(URLRequest(url: url!))

}
    @IBAction func loadSecond(_ sender: Any) {

                let url = URL(string: "http://www.peulibrary.com/application/category/פעולות-גן-ג/")
                Webview.loadRequest(URLRequest(url: url!))
}

当我在模拟器中运行应用程序时,我在第二个

出现错误
Webview.loadRequest(URLRequest(url: url!))

表示"线程1:EXC_BAD_INSTRUCTION(代码= EXC_1386_INVOP,子代码= 0x0)"

任何帮助表示感谢,提前感谢! :)

1 个答案:

答案 0 :(得分:1)

您的URL包含特殊字符,因此请对您的网址字符串进行编码,然后将其与webView一起使用。

let stringURL = "http://www.peulibrary.com/application/category/פעולות-גן-ג/"
if let encodeURL = stringURL.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed),
   let url = URL(string: encodeURL) {

      Webview.loadRequest(URLRequest(url: url))
}