我必须每秒调用此方法stringByEvaluatingJavaScriptFromString来更新Webview的UI。 当调用方法时,我的UI会挂起一段时间。 以下代码片段没有解决我的问题。提前谢谢。
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
dispatch_async(dispatch_get_main_queue(), ^{
[webView stringByEvaluatingJavaScriptFromString:string];
});
});
答案 0 :(得分:0)
一些搜索显示在GCD
块中包装可能是一个错误,并在帮助之后执行此操作:
[webView performSelectorOnMainThread:@selector(stringByEvaluatingJavaScriptFromString:) withObject:string waitUntilDone:NO];
但是,必须在主线程上调用stringByEvaluatingJavaScriptFromString:
,如果您的string
变量很长js
,则可能无法从obj-c
方面将其平滑。您可以尝试优化js
代码。