Pour une raison quelconque, la première fois que le contrôleur de vue est chargé, le contrôle d'actualisation se comporte comme prévu (s'affiche sous vue de la table lors de la lecture). Le problème est que lorsque j'appuie sur un autre onglet, puis que je reviens sur le contrôleur de vue, le contrôle de rafraîchissement ne s'estompe plus et est visible en haut de la vue de table.Actualiser le contrôle au-dessus de la vue de table lorsque je reviens voir le contrôleur
Cela fait partie du code:
class CoreTableViewController : UIViewController, UITableViewDataSource, UITableViewDelegate {
var tableView:UITableView!
var tableData:Array<AnyObject> = []
var dataFetched:Bool = false
var refreshControl:UIRefreshControl?
override func viewDidLoad() {
super.viewDidLoad()
self.edgesForExtendedLayout = UIRectEdge.None;
self.tableView = self.assignTableView()
self.tableView.delegate = self
self.tableView.dataSource = self
self.tableView.registerClass(UITableViewCell.self, forCellReuseIdentifier: "Cell")
self.tableView.separatorStyle = UITableViewCellSeparatorStyle.None;
if self.enableRefresher() {
self.setRefreshControl()
}
}
func enableRefresher() -> Bool {
return true
}
func fetchData(cleanFirst:Bool = false) {
// Fetch data.
}
func refresh() {
self.fetchData(true)
self.refreshControl!.endRefreshing()
}
func setRefreshControl() {
self.refreshControl = UIRefreshControl()
//self.refreshControl!.attributedTitle = NSAttributedString(string: "Actualizar")
self.refreshControl!.addTarget(self, action: #selector(CoreTableViewController.refresh), forControlEvents: UIControlEvents.ValueChanged)
self.tableView.addSubview(refreshControl!)
}
}
Toute pensée?
S'il vous plaît expliquer clairement, je ne comprends pas ce que vous voulez et ce que vous obtenez –