我想在我的iOS webview-app上实现一个刷新按钮。
我尝试过:
@IBAction func refreshAction(sender: AnyObject) {
webView.reload()
}
问题是单击此按钮,它始终会加载webview的主页,而不是用户所在的实际网站。
是否有可能重新加载用户实际所在的一侧?
修改:网站内容是动态构建的。
答案 0 :(得分:0)
我假设当您首次将某个网站加载到您的网页视图时,您会执行以下操作:
webView.reload()
因此,当您致电webviewDidFinishLoad(webView:UIWebView)
时,它会加载发送给它的初始网址
以下是我推荐解决问题的方法。
实现UIWebViewDelegate的class YourViewController:UIViewController, UIWebViewDelegate{
var currentUrl:String!
func webViewDidFinishLoad(webView: UIWebView){
if webView.loading{
return
}
self.currentUrl = webView.request?.URL?.absoluteString
}
}
方法,以获取在webView中加载的当前网站:
webView.reload()
现在,您应该在按钮操作中调用webView.loadRequest(requestObj)
,然后使用实际网址调用@IBAction func refreshAction(sender: AnyObject) {
let url = NSURL (string: self.currentUrl)
let requestObj = NSURLRequest(URL: url!);
webView.loadRequest(requestObj)
}
:
onCreate()