gpt4 book ai didi

当 UI 更新时,IOS 会收到通知。

转载 作者:行者123 更新时间:2023-11-28 08:29:00 25 4
gpt4 key购买 nike

我有一个自定义键盘扩展。按下删除键时调用此函数:

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0),
{
for _ in 1..<50
{
(self.textDocumentProxy as UIKeyInput).deleteBackward()
}
print("Deletion End")
self.deleteCounter = 0
})

我不认为 dispatch_async 是相关的,但我包含了它,以防万一。

问题是,即使我的控制台在循环结束后打印“删除结束”,文本字段的用户界面也不会更新,直到一两秒过去。

好像在呼唤

(self.textDocumentProxy 作为 UIKeyInput).deleteBackward()

不会立即删除角色并更新 UI。

如何在 UI 实际更新时通知我?

最佳答案

像这样改变:

dispatch_async(dispatch_get_main_queue(),{
for _ in 1..<50
{
(self.textDocumentProxy as UIKeyInput).deleteBackward()
}
print("Deletion End")
self.deleteCounter = 0
})

解释:

UI 必须在主线程中工作,因此当您使用后台队列时,您始终必须在主线程中调度 UI 更新。

关于当 UI 更新时,IOS 会收到通知。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39297713/

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