我想在 UIImageView 中显示“玩家 1 是获胜者”后,将 Tic Tac Toe 应用程序的所有功能卡住/暂停 2 秒。目前它会显示该消息,但只显示一瞬间,因此无法看到。
我尝试过使用该功能:
func delay(delay:Double, closure:()->()) {
dispatch_after(dispatch_time(DISPATCH_TIME_NOW,Int64(delay * Double(NSEC_PER_SEC))),dispatch_get_main_queue(), closure)
但这似乎并没有暂停我的应用程序,它只是延迟了后面的代码。这是一个问题,因为一旦应用程序暂停,用户仍然可以将游戏棋子放置在游戏板上。
提前致谢
最佳答案
要防止用户在显示获胜者标志时与游戏板交互,请将 UI 元素的 userInteractionEnabled
属性设置为 false
。然后使用 delay
在 2 秒内将它们设置回 true
。
类似这样的事情:
imageView.image = UIImage(named: "Player1Wins")
board.userInteractionEnabled = false
delay(2) {
imageView.image = nil
board.userInteractionEnabled = true
}
关于ios - 如何在 Xcode7 中卡住 swift 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37906579/