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()) {
}
希望这能解决您的问题。
祝一切顺利。
在我的 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()) {
}
希望这能解决您的问题。
祝一切顺利。