在swift 3.0和iOS 10上手动启动刷新UIRefreshControl

时间:2016-10-27 14:48:01

标签: ios swift3 uirefreshcontrol

有一段时间我使用的代码是

extension UIRefreshControl {
    func beginRefreshingManually() {
      if let scrollView = superview as? UIScrollView {
        scrollView.setContentOffset(CGPoint(x: 0, y: scrollView.contentOffset.y - frame.height), animated: false)
      }
      beginRefreshing()
}}

要在UIViewControllers的viewDidLoad中手动刷新(显示旋转圆圈),它就像魅力一样。

迁移到swift 3.0和iOS 10后,它突然停止了。此外,我试图将调用移动到viewDidAppear,并且为了我的沮丧,在某些控制器上它起作用,而在某些控制器上没有(如果有任何模式,我无法找到它)

任何解决方案?

欢呼声 WOJTEK

1 个答案:

答案 0 :(得分:1)

iOS 10的UIRefreshControl发生了变化。您一直在添加如下的刷新控件:scrollView.addSubview(refreshControl)。现在,ScrollView,CollectionView和TableView具有refreshControl属性,所以现在这是一个代码:scrollView.refreshControl = refreshControl