【发布时间】:2015-11-05 17:16:14
【问题描述】:
我正在尝试将我的应用程序移至 MVC,我有一个 Parse 查询已移至模型类中的一个函数,该函数返回一个 Bool。
当按下下面的 ViewController 中的按钮时,应该运行模型函数“parseQuery”,返回一个布尔值,然后我需要使用该布尔值继续。目前,if 语句在函数完成之前执行,所以它总是检测到 false。
如何确保函数完成后if语句完成?
@IBAction func showAllExpiredUsers(sender: AnyObject) {
var success = searchResults.parseQuery()
if success {
print("true")
} else {
print("false")
}
//I have also tried:
searchResults.parseQuery()
if searchResults.parseQuery() {
print("true")
} else {
print("false")
}
【问题讨论】:
-
你试过把函数放到
viewDidLoad吗? -
parseQuery() 是您创建的函数吗?这不在解析 API 中
-
让我猜猜 - 函数是异步的?
-
谢谢大家,将它放在 viewDidLoad 中是行不通的,因为它需要在不同的时间调用才能返回更新的结果。 parseQuery() 是我的函数的名称,其中包含一个常规的“findObjectsInBackgroundWithBlock”。我还没有触及同步,所以我猜它默认是异步的。
标签: ios swift model-view-controller parse-platform