2012-11-23 77 views
-1

我正在構建一個android應用程序,我有一個主視圖,它對導致GUI重繪本身的觸摸事件作出響應。當某些網絡事件發生時,我還必須重新繪製GUI。我有一個單獨的線程在套接字上偵聽。目前我有網絡線程重繪GUI而不是GUI線程做它。這似乎是確定的,因爲重新繪製GUI是可預測的。Java/Android中的事件處理

但是,有一種情況下,我會從網絡獲取需要重繪的消息,但在重繪完成之前需要用戶輸入。我猶豫是否讓網絡線程現在這樣做,就好像用戶沒有快速輸入一樣,網絡線程將被卡住等待輸入,而不是等待進一步的通信。

看起來似乎的解決方案是在出現此情形時讓網絡事件觸發事件,然後GUI線程可以像監聽onTouch事件一樣偵聽事件。

1)我該如何實現?

一些其他的東西

2)它是可以欺騙Android系統成爲一種思維活動onTouch時具有它實際上有沒有

3)當在GUI的按鈕觸發一個事件,該線程執行發生onAction方法。是GUI線程還是按鈕存在於它自己的線程中。

回答

0

-您可以使用java.util.concurrent.CountDownLatch

-您可以等待該情況發生,並且完成時讓GUI線程可以開始工作。