Android:将事件发布到视图的消息队列

Android:将事件发布到视图的消息队列,android,view,Android,View,我有以下问题: 我的应用程序有一个更新游戏状态的线程。应用程序需要对此线程触发的视图对象的状态进行更改。 视图的文档声明它只应该从UI线程进行修改,并且应该使用处理程序来放置和处理事件 然而,视图中有一个函数post(),我可以在其中发布一个可运行对象,该对象将在UI线程中执行,而无需处理程序参与。我不能从UI线程以外的线程调用此函数吗 我糊涂了 是的,您可以使用View.post()。在内部,它使用一个处理程序来发布Runnable。如果您想从后台线程在UI线程上运行一些任意代码,可以使用Ac

我有以下问题: 我的应用程序有一个更新游戏状态的线程。应用程序需要对此线程触发的视图对象的状态进行更改。 视图的文档声明它只应该从UI线程进行修改,并且应该使用处理程序来放置和处理事件

然而,视图中有一个函数post(),我可以在其中发布一个可运行对象,该对象将在UI线程中执行,而无需处理程序参与。我不能从UI线程以外的线程调用此函数吗


我糊涂了

是的,您可以使用View.post()。在内部,它使用一个处理程序来发布Runnable。

如果您想从后台线程在UI线程上运行一些任意代码,可以使用Activity的runOnUiThread()


不太相关,但请查看
AsyncTask
,这是一个线程,它的progress/result方法在UI线程上运行,可能会对您有所帮助。
   runOnUiThread(new Runnable() {
        @Override
        public void run() {

        }
    });