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下一组问题和答案
如果您需要说明,请告诉我
我和 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下一组问题和答案
如果您需要说明,请告诉我