Я создал WebView в ViewController и загрузки страницы, как этотПолучить параметры из ссылки в WebView
func loadAddress(){
let requestURL = NSURL(string:"http://www.example.com/")
let request = NSURLRequest(url: requestURL as! URL)
webview.loadRequest(request as URLRequest)
}
И называют это в
viewDidLoad
I имеют несколько ссылок на странице с параметрами URL-адреса, подобными этому
http://www.example.com?id=1&title=ABC
Теперь, когда пользователь нажимает на эту ссылку из приложения, то вместо того, чтобы перенаправление URL, я хочу, чтобы получить параметры из URL и открыть диалоговое окно, в прошивкой
Я нашел несколько примеров в Objective C, но я ищет решение в Swift 3
PS: у меня есть доступ к HTML этого сайта я могу заменить ссылки в соответствии с требованиями Xcode
EDIT: Вот что я попробовал, в том же файле, где мой WebView это я эта функция
func webView(_ webView: UIWebView,shouldStartLoadWith request: URLRequest,navigationType: UIWebViewNavigationType) -> Bool {
let scheme = request.url!
NSLog(scheme.absoluteString)
return false
}
, а также убедились, что класс является делегатом Webview
, что я делаю неправильно?
Несвязанного к вашему вопросу, но обратите внимание, что вы не должны опущенная NSURL к URL или NSURLRequest для URLRequest [только использовать новые структуры непосредственно] (HTTP: //stackoverflow.com/Вопросы/37812286/скор-3-urlsession-разделяемая неоднозначная ссылка на члене-datataskwithcomplet/37812485 # 37812485). – Moritz
xcode давал ошибки и предлагал это исправление самостоятельно –
Возможно, но это не имеет значения. Xcode - это просто IDE, это не всегда правильно. На самом деле, иногда, это просто неправильно ...;) TL; DR: не утапливайте, когда вам не нужно, что бы ни говорил Xcode. – Moritz