2012-11-12 41 views
0

我有点难倒了一个问题,原谅我,因为我对android开发非常陌生。我做了一些搜索,发现了很多不同的观点。我有一个调用Web服务的AsynchTask并返回一堆json结果。我不得不(&想)异步运行我的web服务。结果集需要在RelativeLayout内部呈现。我试图在异步线程中执行此操作,但Android不允许从不是主线程的任何内容更新UI。从asynch任务调用runonuithread任务

我看到Runonuithread,但我不能从我的UI线程调用我的asynchtask。

什么是最好的方式异步调用我的web服务,获取结果,然后更新原始线程上的mainUI。从架构的角度来看是否有最佳做法?

+0

onPostExecute()在ui线程上运行,否则您将需要使用Handler。 – Joel

+0

就是这样。非常感谢你!!!我想将其标记为已回答,我假设左侧的“明星”是通过这种方式来实现的吗? – mornindew

+0

在这里,我将发布一个答案,然后你可以选择它。 – Joel

回答

1

onPostExecute()在ui线程上运行,所以请尝试使用该方法来完成您的工作。否则,您可以使用Handler类在线程之间进行通信。