Ios 如何连续调用Swift中的分页数据

Ios 如何连续调用Swift中的分页数据,ios,swift,pagination,Ios,Swift,Pagination,按下按钮后,我需要下拉分页数据(从Pinterest IOS SDK中下拉PIN,每次调用的PIN限制为25),即我需要我的代码进行迭代,直到responseObject不再。hasnext。最好的方法是什么?我可以一次又一次地按下按钮来把它全部拉下来,但我想让它自动化,所以只需要按下一个按钮 @IBAction func didPressGetPinsButton(sender: UIButton) { if self.fetchingMore == false

按下按钮后,我需要下拉分页数据(从Pinterest IOS SDK中下拉PIN,每次调用的PIN限制为25),即我需要我的代码进行迭代,直到
responseObject
不再
。hasnext
。最好的方法是什么?我可以一次又一次地按下按钮来把它全部拉下来,但我想让它自动化,所以只需要按下一个按钮

@IBAction func didPressGetPinsButton(sender: UIButton) {



            if self.fetchingMore == false && self.currentResponseObject.hasNext() {


                    self.fetchingMore = true

                    self.currentResponseObject.loadNextWithSuccess({ (nextResponseObject :PDKResponseObject!) -> Void in

                        self.fetchingMore = false
                        self.currentResponseObject = nextResponseObject



                        guard let unwrappedArrayOfPins = nextResponseObject.pins() as? [PDKPin] else {return}

                          for pin in unwrappedArrayOfPins {
                              pins.append(pin) 
                          }

将操作代码放入一个单独的函数中,这样您就可以在第一次按下按钮时调用它,然后在.hasNext时继续调用它

@IBAction func didPressGetPinsButton(sender: UIButton) {
    actionGetPins()
}

func actionGetPins() {
    // all your code

    if nextResponseObject.hasNext() {
        actionGetPins()
    }
}
根据获取所有数据所需的时间,您可能还希望在后台任务中运行整个函数,但您至少应该添加一个忙碌指示器,以显示仍有工作要完成