gpt4 book ai didi

swift - 让标签在 Swift 中延迟出现

转载 作者:行者123 更新时间:2023-11-28 07:17:45 24 4
gpt4 key购买 nike

我想延迟我的井字游戏。这是为了让它看起来好像人工智能正在思考。在我的标签 thinkingLabel 上,我想在延迟期间显示以下字符串 "Thinking..."。在延迟之后(AI 已经移动),标签应该消失。

在延迟之后,我用来执行两个函数的 dispatch_after 序列有没有办法,我的 AI 转向和标签变化?有没有更好的方法?

这是我用于延迟的代码:

checkforWin()
let delay = 1 * Double(NSEC_PER_SEC)
let time = dispatch_time(DISPATCH_TIME_NOW, Int64(delay))
dispatch_after(time, dispatch_get_current_queue(), {
self.aiTurn()
})

最佳答案

当然可以。传递给 dispatch_after 的 block 可以有任意行数:

checkforWin()
let delay = 1 * Double(NSEC_PER_SEC)
let time = dispatch_time(DISPATCH_TIME_NOW, Int64(delay))

dispatch_after(time, dispatch_get_current_queue(), {
self.aiTurn()
// more lines here
})

但是,如果您要更新 block 内的 UI,请记住所有 Cocoa UI 更新都必须在主线程上进行。最安全的做法是使用 dispatch_get_main_queue 而不是 dispatch_get_current_queue

关于swift - 让标签在 Swift 中延迟出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24718883/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com