0
在我的iOS應用程序(一種flashCard應用程序)中,我使用的是UIWebView
,一旦webview
內容加載完成,我需要執行一些UI操作(更改)。
我在webViewDidFinishLoad
檢查了這個。
當用戶點擊一張卡片時,它將翻轉並加載不同的內容。我使用下面的代碼在此flipAction
以及在swipeAction
(當從一張卡到另一用戶移動時)檢查:iOS stringByEvaluatingJavaScriptFromString - UI凍結
if (![[myWebView stringByEvaluatingJavaScriptFromString:@"document.readyState"] isEqualToString:@"complete"])
{
[self performSelector:@selector(myCustomMethod:) withObject:self afterDelay:3.0];
}
有時候,並非總是如此,我的用戶界面將凍結上述if條件和後該用戶界面將不會進一步響應。該應用程序必須手動殺死並重新啓動。
我需要撥打stringByEvaluatingJavaScriptFromString
:線程以外的方法嗎? 或這可能是什麼原因?
你在if塊來執行一些UI更新?您發佈的代碼是否在主線程上運行? – tanzolone
雅我只使用主線程執行UI更新。 – Smith