der Grund des Laufzeitfehler ist yo Sie können eine optionale Instanz der NSURL
, die eigentlich nil
ist, auspacken.
Der Grund für urls
ist nil
ist searchurl
Zeichenfolge enthält invalid Zeichen (außerhalb des 7-Bit-ASCII-Bereichs). Um in URLs verwendet zu werden, sollten Zeichen prozentual kodiert sein.
Swift 2 (Ich denke, Sie diese Version verwenden):
let encodedTexts = texts.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLQueryAllowedCharacterSet())
if let encodedTexts = encodedTexts {
let searchurl = "http://sngpoisk.ru/search-location/?search_keywords=\(encodedTexts)&search_location=&place_location=&latitude=&longitude="
let urls = NSURL(string:searchurl)
if let urls = urls {
let ret = NSURLRequest(URL:urls)
Browser!.loadRequest(ret)
}
}
Swift 3:
let encodedTexts = texts.addingPercentEncoding(withAllowedCharacters: NSCharacterSet.urlQueryAllowed)
if let encodedTexts = encodedTexts {
let searchurl = "http://sngpoisk.ru/search-location/?search_keywords=\(encodedTexts)&search_location=&place_location=&latitude=&longitude="
let urls = URL(string:searchurl)
if let urls = urls {
let ret = URLRequest(url:urls)
Browser!.loadRequest(ret)
}
}