【发布时间】:2015-02-24 18:47:29
【问题描述】:
在将这些东西组合成一个整体时,我遇到了一个棘手的问题。 示例:我想获取用户位置并使用纬度和经度值更新 UI。因为我坚持 MVC 模式,所以我为此任务创建了一个单独的类(例如 LocationWorker)并按照本指南实现了它: http://developer.android.com/training/location/retrie..
问题:在这种情况下,onConnected 回调位于 LocationWorker 类中,无法与 UI 进行通信。我尝试在 MainActivity 类中实现 onConnected callBack(还添加了 GoogleApiClient.ConnectionCallbacks 的实现),但出现错误(尝试在空对象引用上调用虚拟方法“methodName”)。似乎在 Worker 之前执行的回调实际上完成了所有工作(连接后它会获取用户位置,但 OnConnectedCallback 是在连接后立即触发,并且在它有任何时间获取任何数据之前)。
无论如何,这对我来说是个大问题,我应该使用什么来执行异步任务并能够在异步任务完成时更新 UI(并且不破坏 MVC)?
【问题讨论】:
标签: java android android-asynctask callback