两周前开始学习 swift,之前没有任何编程经验,我终究无法弄清楚为什么检查 nil 不起作用。如果用户输入无效的 URL,它只会在尝试加载网页时崩溃。这是完整的代码。
import UIKit; import WebKit
class ViewController: UIViewController {
@IBOutlet weak var adressBar: UITextField!
@IBOutlet weak var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
@IBAction func returnPressed(_ sender: Any) {
if let adressBarText = adressBar.text {
if let myURL = URL(string: adressBarText) {
let myRequest = URLRequest(url: myURL)
webView.load(myRequest)
adressBar.resignFirstResponder()
print("EYYYYY")
} else {
print("BOOOO")
}
}
}
最佳答案
试试这个方法
func verifyUrl (urlString: String?) -> Bool {
//Check for nil
if let urlString = urlString {
// create NSURL instance
if let url = NSURL(string: urlString) {
// check if your application can open the NSURL instance
return UIApplication.sharedApplication().canOpenURL(url)
}
}
return false
}
关于swift - URL 验证无法快速工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49089058/