iOS 如何获取下一行解析 Swift

iOS How to fetch next row parse Swift

我和 DB 一起工作 Back4app 它类似于 parse.com

我想加载点击按钮,数据库的下一行。

现在,当用户按下下一步时,我将第一行提取到我的标签和按钮,应用程序将从数据库加载新行。

我的获取数据代码:

let query = PFQuery(className: "test")
query.getFirstObjectInBackground{ (objects, error) in
    if error == nil && objects != nil {
        let question: String = objects!["question"] as! String
        let answer1: String = objects!["answer1"] as! String
        let answer2: String = objects!["answer2"] as! String
        let answer3: String = objects!["answer3"] as! String
        let answer5: String = objects!["answer5"] as! String
        self.question = question
        self.answer1 = answer1
        self.answer2 = answer2
        self.answer3 = answer3
        self.answer4 = answer5
        DispatchQueue.main.async {
            self.loadDataToBox()
        }
    } else {
        print("Error")
    }

我该怎么做?我找不到有关此的信息。我只找到了如何加载到 table 视图,但我没有使用 table 视图。

示例:

好的,所以有了解析,您可能不想每次都调用服务器,所以您要做的是将数据附加到数组,然后只获取每个索引处的信息。有很多方法可以做到这一点,但我将展示一种简单的方法来做到这一点。您对解析的了解越多,您就可以使用 PFSubclassing,这是处理数据的更好方法,但现在就这样做吧。将其创建为新 class

Class QuestionManager{
     var question: String?
     var answerA: String?
     var answerB: String?
     var answerC: String?
     var answerD: String?

}

在第一个 class 中执行此操作。

var questions = [QuestionManager]()
var arrayIndex = 0
let query = PFQuery(className: "test")
query.findObjectsInBackground{ (objects, error) in
if error == nil && objects != nil {
    for object in objects as? [PFObject]{
          self.questions.append(QuestionManager(
          question: object!["question"] as! String,
          answerA: object!["answer1"] as! String,
          answerB: object!["answer2"] as! String,
          answerC: object!["answer3"] as! String,
          answerD: object!["answer4"] as! String

          ))
    }
} else {
    print("Error")
}

然后两次访问它只是改变了数组的索引

self.label.text = questions[arrayIndex].question

每次向数组添加一个,它都会return下一组问题和答案

如果您需要说明,请告诉我