我有四个功能要随机激活。这是我到目前为止的代码,我没有从中得到错误。但是,当我试图调用createSquare()函数时,出现了一个错误“expression resolves to an unused function”。

func createSquare () -> () -> () {
    let squares = [self.squareOne, self.squareTwo, self.squareThree, self.squareFour]

    let randomSquare = Int(arc4random_uniform(UInt32(squares.count)))

    return squares[randomSquare]

}
if gameIsOn == true {
    createSquare()
}

如何成功调用createSquare()函数?
func squareOne() {
    square1.isHidden = false
}

平方2,平方3,平方4都是相似的,有不同的数字。

最佳答案

问题是createSquare()返回一个从未调用过的闭包(这是警告消息中提到的“未使用的函数”)。
您需要调用函数,例如:

let randomFunction = createSquare()
randomFunction()

您也可以立即使用不太可读的语法调用它:
createSquare()()

07-26 06:24