iOS swift 下拉刷新与 tableview 混合使用

iOS swift pull to refresh mixes with tableview

在我的 table 视图控制器中,我实现了下拉刷新 (UIRefreshControl)。问题是我不知道为什么它与 tableView (UITableViewController) 混合在一起。有关详细信息,请参阅屏幕截图。感谢您的协助!

我遇到了类似的问题,我是这样解决的:

在View Controller上添加Refresh Controller时需要编写如下代码:

dispatch_async(dispatch_get_main_queue()) {
    self.refreshControl.beginRefreshing()
    self.refreshControl.endRefreshing()
}

你可以像这样实现刷新控制。

class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource {

    @IBOutlet var tableView: UITableView!
    var refreshControl : UIRefreshControl!

}

override func viewDidLoad() {
    super.viewDidLoad()


    self.refreshControl = UIRefreshControl()
    self.refreshControl.backgroundColor = UIColor.clearColor()
    self.refreshControl.tintColor = UIColor.blackColor()

    self.refreshControl.addTarget(self, action: "methodPullToRefresh:", forControlEvents: UIControlEvents.ValueChanged) 

    self.tableView.addSubview(self.refreshControl)

}

func methodPullToRefresh(sender:AnyObject)
{
    self.refreshControl?.beginRefreshing()

}

// Once you are done with your task
self.refreshControl?.endRefreshing()

// Main queue thread is only required when refresh controls comes or goes off with delay, if it works quickly then no need to add this
dispatch_async(dispatch_get_main_queue()) {

}

希望这能解决您的问题。

祝一切顺利。