2011-11-25 62 views
2

我有一个简单的活动(Activity1),它将使用“ActionCallback”创建回调。我正在从Activity1执行此回调,但由于网络延迟,结果显示一段时间后,我需要在Activity2(扩展ListActivity)的另一个视图上显示callBack的结果。NewBie:我如何将回调传递给其他活动

我不想在活动1等待(用户体验)回调来完成,然后通过发送至活性2 Intent.putExtra()

我的问题是,如何从活动1通过这个回调活性2 ?这可以做到吗?还是有更好的方法来编程这个逻辑?

感谢

回答

1

使用startActivityForResult &探索它,所以你会得到更好的方式做任何你在回调

+0

是不是startActivityForResult()用于从返回的Intent(Actvity)中检索数据? 我的方案是,我想启动Activity2(通过传递回调实例)并等待Activity2 – 2ndlife

+0

中的回调结果,同时启动新的Activity创建1个线程,它将完成您的回调工作并使用您的自定义处理程序类处理'处理程序mHandler =新的处理程序(){ @Override 公共无效的handleMessage(消息MSG){// 代码将被执行之后完成任务} };' –

+0

由于萨蒂亚,我会尝试。 – 2ndlife

1

想如果网络行动直接相关的活动性切换,你可能只想通过所有收集到Activity2的信息并在那里启动网络呼叫。

或者,您可以在加载信息并为需要显示信息的广播注册任何活动时从异步任务发送广播。

+0

好的,我会试试这个。 你能指点我的任何示例代码?或者有关于此的一些在线帮助? – 2ndlife

+0

但我仍然需要将网络实例传递给Activity2,因为网络实例是在Activity1中创建的。 如何将此网络对象传递给Activity2? putExtra()不带'对象' – 2ndlife

相关问题