gpt4 book ai didi

iOS stringByEvaluatingJavaScriptFromString - UI 卡住

转载 作者:行者123 更新时间:2023-11-29 03:18:41 25 4
gpt4 key购买 nike

在我的 iOS 应用程序(一种闪存卡应用程序)中,我使用 UIWebView ,一旦 webview 内容加载完成,我需要执行一些 UI 操作(更改)。
我正在 webViewDidFinishLoad 中检查这一点。
当用户点击卡片时,它会翻转并加载不同的内容。我在此 flipAction 以及 swipeAction(当用户从​​一张卡移动到另一张卡时)中使用下面的代码来检查:

if (![[myWebView stringByEvaluatingJavaScriptFromString:@"document.readyState"] isEqualToString:@"complete"])
{
[self performSelector:@selector(myCustomMethod:) withObject:self afterDelay:3.0];
}

有时(并非总是如此),我的 UI 会在上述 if 条件下卡住,之后 UI 将不再响应。该应用程序必须手动终止并重新启动。

我是否需要调用除线程之外的 stringByEvaluatingJavaScriptFromString: 方法?或者这可能是什么原因?

最佳答案

你可以试试后台线程

dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0ul);
dispatch_async(queue, ^{
// async operation
// Call your method here

dispatch_sync(dispatch_get_main_queue(), ^{
// Update UI here

});
});

关于iOS stringByEvaluatingJavaScriptFromString - UI 卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21382900/

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