3

當試圖打開一個網頁視圖在我的Nexus 4目前採用Android 4.4(奇巧)我會收到此錯誤信息:java.lang.IllegalStateException:在另一個線程比UI線程中調用視圖方法

Calling View methods on another thread than the UI thread.; 
java.lang.IllegalStateException: Calling View methods on another thread than the UI thread. 
com.android.webview.chromium.WebViewChromium.createThreadException(WebViewChromium.java:268) 

因爲我更新到Android 4.4我的Nexus 4

+1

你能否澄清一下?你究竟如何打開網頁視圖? 「自從我升級到Android 4.4以來」是什麼意思?你有任何代碼要顯示嗎? – EJK

+1

異常意味着你應該在UI線程中運行你的代碼。你可以使用處理程序或runOnUiThread來解決這個問題 – yushulx

回答

4

只檢查遷移Web視圖4.4加入谷歌和它here

runOnUiThread(new Runnable() { 
    @Override 
    public void run() { 
     // Code for WebView goes here 
    } 
}); 


// This code is BAD and will block the UI thread 
webView.loadUrl("javascript:fn()"); 
while(result == null) { 
    Thread.sleep(100); 
} 
7

什麼是你改變了一些東西r代碼像?你可以試試

runOnUiThread(new Runnable() { 
     @Override 
     public void run() { 

      // TODO Your code 
     } 
    }); 
+0

謝謝Jerome你的答案! =) – Jorgesys

相關問題