Ios Xcode:WebView在EndRefresh()之后刷新/重新加载

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

我使用Xcode和Swift构建了一个iOS应用程序

当我拉刷新时,activityIndicator旋转。 当我发布动画/旋转将立即停止,但网站仅在大约3/4-1秒后刷新/重新加载

是否有办法在刷新结束前显示动画/旋转轮? 这是我的代码:

    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
中,就像我在回答中所做的那样。