Ios Xcode:WebView在EndRefresh()之后刷新/重新加载
我使用Xcode和Swift构建了一个iOS应用程序 当我拉刷新时,activityIndicator旋转。 当我发布动画/旋转将立即停止,但网站仅在大约3/4-1秒后刷新/重新加载 是否有办法在刷新结束前显示动画/旋转轮? 这是我的代码:Ios Xcode:WebView在EndRefresh()之后刷新/重新加载,ios,xcode,swift,delay,pull-to-refresh,Ios,Xcode,Swift,Delay,Pull To Refresh,我使用Xcode和Swift构建了一个iOS应用程序 当我拉刷新时,activityIndicator旋转。 当我发布动画/旋转将立即停止,但网站仅在大约3/4-1秒后刷新/重新加载 是否有办法在刷新结束前显示动画/旋转轮? 这是我的代码: func pullToRefresh() { self.homewebview.reload() self.refreshControl.endRefreshing() // NSURLCache.sha
func pullToRefresh() {
self.homewebview.reload()
self.refreshControl.endRefreshing()
// NSURLCache.sharedURLCache().removeAllCachedResponses()
}
func addRefreshControl() {
refreshControl = UIRefreshControl()
refreshControl.attributedTitle = NSAttributedString(string: "Einen Moment bitte…")
refreshControl.addTarget(self, action: #selector(FirstViewController.pullToRefresh), forControlEvents:.ValueChanged)
self.homewebview.scrollView.addSubview(refreshControl)
refreshControl.tintColor = UIColor.blackColor()
}
您需要在
UIWebViewDelegate
的委托方法中调用UIRefreshControl
的endRefreshing
方法,如下所示
override func viewDidLoad() {
super.viewDidLoad()
self.webView.delegate = self
}
func webViewDidFinishLoad(webView: UIWebView) {
self.refreshControl.endRefreshing()
}
同时从pullToRefresh
方法中删除self.refreshControl.endRefreshing()
希望这将对您有所帮助。您需要像这样调用
UIWebViewDelegate
的委托方法中UIRefreshControl
的endRefreshing
方法
override func viewDidLoad() {
super.viewDidLoad()
self.webView.delegate = self
}
func webViewDidFinishLoad(webView: UIWebView) {
self.refreshControl.endRefreshing()
}
同时从pullToRefresh
方法中删除self.refreshControl.endRefreshing()
希望这能对你有所帮助。嗨,谢谢你试着帮助我。动画和纺车现在不会消失。轮子一直旋转。您需要将
webView
对象的委托设置为self
。检查我编辑的答案。对于self.webView.delegate=self
我得到:无法将“MyViewController”类型的值分配给“UIWebViewDelegate”类型,我必须这样做,对吗?代码:类MyViewController:UIViewController、UIWebViewDelegate{
Yes也在MyViewController
中添加UIWebViewDelegate
的delegate方法,就像我在回答中所做的那样。您好,感谢您尝试帮助我。动画和旋转轮现在不会消失。旋转轮一直旋转。您需要将webView
对象的委托设置为self
。检查我编辑的答案。对于self.webView.delegate=self
我得到:无法将类型“MyViewController”的值分配给类型“UIWebViewDelegate?”我必须这样做,对吗?代码:类MyViewController:UIViewController,UIWebViewDelegate{
Yes也将webViewDidFinishLoad
uiwebviewdegate
的委托方法添加到MyViewController
中,就像我在回答中所做的那样。