1
リフレッシュの進行が完了すると、自分のリフレッシュコントロールが消えません。私はendRefreshing()を呼び出してもアニメーションは残っています。RefreshControlが非表示にならない
import UIKit
class MyTableViewController: UITableViewController {
override func viewDidLoad() {
super.viewDidLoad()
refreshControl = UIRefreshControl()
refreshControl?.attributedTitle = NSAttributedString(string: "Pull to refresh")
refreshControl?.addTarget(self, action: #selector(self.refresh), for: UIControlEvents.valueChanged)
tableView.addSubview(refreshControl!)
setData()
}
func setData(){
ApiClient.sharedInstance().getData{(myData, error) in
if (myData != nil){
DispatchQueue.main.async {
self.myLabel.text = myData
self.refreshControl?.endRefreshing()
}
}
if (error != nil){
print(error)
}
}
}
func refresh(sender:AnyObject) {
setData()
}
}
私を助けることができますか?
あなたは、メインスレッド上でendRefreshing呼び出す必要があります。 – Starlord
これは既に "DispatchQueue.main.async {"で完了していませんか? – Pascal
'self.myLabel.text'は更新されますか? – keithbhunter