如何使用 Alamofire 提神

How To Refresh With Alamofire

我是 Alamofire 的新手,Swift 如果我的问题很愚蠢,请不要生气。

好吧,既然已经不在了,让我们开始我的查询...

我正在从 JSON URL 获取数据,然后用 JSON 解析它。我正在使用此方法获取数据(已分配 "url"!)

Alamofire.request(.GET, url)

然后我将数据的某些部分分配给 UI 个元素,例如这个;

self.something.text = json["Something"]["Something"]["Something"][0]["Something"].string

这很好用。

我想要一些关于如何刷新它的指导,因为来自 URL 的数据每 2-5 分钟更改一次。

最好我希望它能够上拉刷新,但任何东西都可以,刷新按钮或自动刷新。

非常感谢您阅读我的问题,我很感激任何answers/feedback。

如果您需要我添加更多代码,我会很乐意这样做!

将您的 Alamofire 代码放入一个函数中 例如

func refreshUI() {
    //Alamofire.request........
}

然后在需要刷新时调用此函数 UI,例如使用每 5 分钟调用此函数的计时器

我认为最好编写服务器端代码让服务器在发生更改时发送远程通知

您提到使用上拉刷新。所以我假设您在 UIViewController.

中有 UITableViewControllertableView

然后用 UIRefreshController 设置真的很容易。在您的 viewDidLoad

中调用此函数
func setupRefreshControl() {
    let refreshControl = UIRefreshControl()
    refreshControl.attributedTitle = NSAttributedString(string: "Pull to Refresh");
    refreshControl.addTarget(self, action: #selector(self.refreshIsRequested), forControlEvents: UIControlEvents.ValueChanged)
    tableView.addSubview(refreshControl)
}

func refreshIsRequested() {
    //Alamofire.request(.GET, url)... your alamofire request here
    //Upon completion call self.refreshControl.endRefreshing()
}