我希望在将数据向后发送到已经运行的Activity
时提供一些帮助。
我希望用户能够从列表中选择一个选项,然后在之前的活动中使用该选项。我知道如何使用意图继续前进,但是在这种情况下如果没有同时运行任意数量的相同活动窗口,它将无法工作。
类似于更改手机中的设置,但更多可以访问字符串。如果您需要更多信息,请询问。
答案 0 :(得分:8)
有两种方法可以做到这一点,第一种方法是调用startActivityForResult(),而不是调用startActivity(),这就是文档中有关它的说法:
有时您希望在活动结束时从结果中获取结果。例如,您可以启动一项活动,让用户在联系人列表中选择一个人;当它结束时,它返回被选中的人。要执行此操作,请使用标识该调用的第二个整数参数调用startActivityForResult(Intent,int)版本。结果将通过onActivityResult(int,int,Intent)方法返回。
http://developer.android.com/reference/android/app/Activity.html
另一种方法是在活动结束时发送广播,并在原始活动中注册broadcastReceiver()。
答案 1 :(得分:1)
如果您使用startActivityForResult()
而不是startActivity
开始第二项活动,那么当第二项活动完成后,您可以设置resultCode
和Intent
。然后它会调用方法:
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
}
在您的第一个Activity
中,您可以在其中阅读resultCode
和Intent
数据
答案 2 :(得分:0)
您需要使用startActivityForResult。
答案 3 :(得分:0)