0
我已经斯威夫特文档中被搜索和谷歌搜索,但无法找到如何从这样的块返回值:从封闭返回布尔
func checkIfplayerFellDown() -> Bool {
self.enumerateChildNodesWithName("brick", usingBlock: {
(node: SKNode!, stop: UnsafeMutablePointer <ObjCBool>) -> Bool in
if (node.position.y < self.player.position.y) { return false }
})
return true
}
的问题是,因为我不明白块。我通常像这样使用它们:
world.enumerateChildNodesWithName("name") {node, stop in
if (node.position.y < self.size.height*0.5) {
node.removeFromParent()
}
}
如何从任何这些闭包中返回布尔值?我知道我应该在某个地方使用某种语法,我尝试了一些东西,但没有一个能够工作,因为我不知道这些模块是如何工作的。
任何解释或如何完成这个例子表示赞赏。
她的第一个代码块将不起作用,因为块内的“返回false”从块返回,但不会使'enumerateChildNodesWithName'完全返回,也不会使'checkIfplayerFellDown'函数返回false。实际上,它会导致编译时错误,因为块必须返回void,而不是布尔值。 –