如何在活动中传递回调

时间:2012-08-20 09:15:18

标签: android android-activity

我有两个Activity:Activity1和Activity2 Activity1启动Activity2,我想从Activity2向Activity1发送一个结果,但是我不能使用startActivityForResult()导致Activity1的lanuchmode是singelInstance。有没有办法从Activity1发送回调到Activity2?(据我所知,一个是发送BroadCaseReceiver,另一个是在Activity2中成为一个静态参数)

非常感谢!

2 个答案:

答案 0 :(得分:0)

startActivityForResult not working properly with launchMode singleInstance

类似的问题,它建议使用已保存的实例状态和/或将信息保存到db / global存储。

onActivityResult do not fire if launch mode of activity is singleInstance

建议您使用其他类型,将singleInstance替换为singleTask

您可以扩展要启动的活动,并将其类型强制为此方案的其他类型,将原始文件保留为SingleInstance。

答案 1 :(得分:0)

使用广播在两个活动之间进行通信是行不通的。一次只能激活其中一个活动。例如,使用它在活动和服务之间进行通信是有意义的。

通常,您可以使用intent extras将信息传递给下一个Activity。即,使用putExtra。

(java.lang.String,android.os.Bundle)