UIWebView不会在Swift中重新加载新的URL

时间:2015-12-07 19:52:56

标签: ios uiwebview swift2.1

在我想加载新网址之前,我总是使用UIWebView而没有麻烦。使用下面的代码,第二个URL将不会由于某种原因加载。你能找到原因吗? (plist有域名的例外!)

    let webview = UIWebView()
    webview.frame = CGRectMake(0, 0, view.bounds.width, view.bounds.height )
    view.addSubview(webview)

    var url = NSURL (string: "http://google.com")
    var requestObj = NSURLRequest(URL: url!,
        cachePolicy: NSURLRequestCachePolicy.ReloadIgnoringLocalAndRemoteCacheData,
        timeoutInterval: 10.0)
    webview.loadRequest(requestObj)
    webview.reload()

    //Wait 5 seconds to load another page
    let time = dispatch_time(dispatch_time_t(DISPATCH_TIME_NOW), 5 * Int64(NSEC_PER_SEC))
    dispatch_after(time, dispatch_get_main_queue()) {

    url = NSURL (string: "http://yahoo.com")
     requestObj = NSURLRequest(URL: url!,
        cachePolicy: NSURLRequestCachePolicy.ReloadIgnoringLocalAndRemoteCacheData,
        timeoutInterval: 10.0)

    webview.loadRequest(requestObj)
    webview.reload()
    }

1 个答案:

答案 0 :(得分:4)

调用webview.loadRequest()开始加载webview内容。调用webview.reload()重新加载已完成加载的最后一个请求。由于您在加载请求后立即呼叫重新加载,因此重新加载会再次加载您的第一个请求“google.com” 删除webview.reload()来电将会加载您的第二个请求。