2015-04-03 61 views
1

在我的表視圖控制器,我已經實現拉刷新(UIRefreshControl)。問題是我不知道爲什麼它與tableView(UITableViewController)混合。有關詳細信息,請參閱截圖。謝謝您的幫助!iOS快速拉刷新混合與表視圖

pull to refresh mix with tableView

+0

你需要提供更多的細節(代碼,你添加刷新控制等) – shim 2015-04-03 16:06:29

+0

它發生在我去另一個控制器,並返回 – mazorati 2015-04-03 18:26:15

+0

你可以顯示你用來設置刷新代碼控制。 – Fogmeister 2016-05-12 12:26:06

回答

1

您可以實現像這樣刷新控件。

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() 

} 

enter image description here

// 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()) { 

} 

enter image description here

希望,這將解決您的問題。

一切順利。

0

我也有類似的問題,我解決了它這樣:

當視圖控制器將刷新控制器,需要編寫以下代碼:

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

老實說,我從來沒有在我的生活中使用這些代碼行 – 2016-05-12 12:24:29

+0

但是,它完美的工作:) – 2016-05-13 11:23:35