如何使用按钮刷新tableView和JSON数据或拉动刷新?

时间:2018-01-26 22:43:01

标签: json swift refresh reload

我是swift的新手,我无法找到如何同时刷新TableView和JSON数据的方法。刷新TableView后首先刷新Json。我怎样才能做到这一点 ?

1 个答案:

答案 0 :(得分:0)

您需要在您的UITableView

中添加pull to refresh class
private let refreshControl = UIRefreshControl()
var tableView: UITableView!

然后在ViewDidLoad中将其作为子视图添加到tableView,您甚至可以更改其颜色和文字。

override func viewDidLoad() {

     if #available(iOS 10.0, *) {
        tableView.refreshControl = refreshControl
    } else {
        tableView.addSubview(refreshControl)
    }
    refreshControl.tintColor = UIColor.blue
    refreshControl.attributedTitle = NSAttributedString(string: "Fetching Data ...", attributes: [NSAttributedStringKey.foregroundColor : UIColor(red:0/255, green:168/255, blue:225/255, alpha:1.0)])
    refreshControl.addTarget(self, action: #selector(refreshData(_:)), for: .valueChanged)

}

当值如上所示更改时,使用选择器函数向其添加目标。

@objc private func refreshData(_ sender: Any) {

   //load the data from the server and 
   //parse and put it in an array then reload your table view

}