2012-11-23 37 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线程可以开始工作。