bon*_*ond 4 binding android callback listactivity
我有一个活动(ListActivity),其中如果用户点击按钮,我启动一个意图"IntentService",它基本上对Web服务进行REST调用并收集数据.我的问题是,一旦服务完成,我填充Activity中的项目列表,这只是一个静态var.但是,我无法启动listadaptor,要求它在数据发生变化时刷新视图.有人能告诉我,当IntentService完成任务时,我怎么能"通知"活动刷新?
如果您正在进行REST调用,我建议您使用IntentService而不是AsyncTask.AsyncTask看起来不错而且非常有用,但它需要注意不要泄漏上下文并将结果返回给一个可能早已消失的Activity,这使得正确使用它并不容易.
请观看此演示文稿以获取非常有用的指导
http://www.youtube.com/watch?v=xHXn3Kg2IQE
编辑:至于发回结果,你可以ResultReceiver在你的Intent中包含一个parcelable 来启动IntentService,并使用.send()通知Activity(并在那里处理适配器刷新)
至于刷新ListAdapter,它实际上取决于您使用的是哪种类型.如果它是一个简单的适配器,你可以使用它来交换它
getListView().setAdapter(adapter)
Run Code Online (Sandbox Code Playgroud)
但你会更好,CursorAdapter只是打电话
context.getContentResolver().notifyChange(uri, null);
Run Code Online (Sandbox Code Playgroud)
其中context是IntentService的Context.
希望有所帮助!
| 归档时间: |
|
| 查看次数: |
4505 次 |
| 最近记录: |