我有一个调用webservice的活动并进行xml解析.我希望我的活动等待xml解析类执行,然后我希望我的活动继续.我想知道是否有一个事件委托概念存在于android中,通过它我可以让我的xml解析类在它结束时响应我的活动.
是的,有.你会爱上这ResultReceiver堂课.要创建一个,您需要传递Handler(在活动内部创建),并覆盖该onReceiveResult方法.
所以,你要做的是发送一个ResultReceiver服务的引用(使用Intent额外的),当XML解析完成后,你send从中调用方法Service.这样,您的活动将被通知XML解析已完成.
有一个Google IO视频,其中解释了这种技术.您还可以下载会议中使用的幻灯片.
如果您想要示例代码,请查看iosched应用程序.它将教会如何创建一个ResultReceiver代理,帮助您处理配置更改(例如设备轮换更改)...因为,正如您所知,当重新创建UI时,它可能会导致内存泄漏(您知道,该服务将指向不存在的UI元素).