2 zuguo998 zuguo998 于 2016.04.19 22:27 提问

用ActivityForResult启动Activity怎么传值给启动的Activity

用ActivityForResult启动Activity怎么传值给启动的Activity,我用Intent传值,新启动的Activity里边收不到,我用的是getIntent().put方法取的

4个回答

leilba
leilba   Rxr 2016.04.19 23:10
已采纳

比如当前是在activityA,要跳转到activityB,且传递一个 String s 给activityB。
则在activityA中跳转:

Intent intent = new Intent(activityA.this,activityB.class);
String s = "my data";
intent.putExtra("string",s);
startActivityForResult(intent,1);

在activityB的onCreate中获取传递过来的s:

String s = getIntent().getStringExtra("string");

leilba
leilba 回复zuguo998: 如果是自定义类型的数据传递的话要先序列化的,不然取到的是null
一年多之前 回复
zuguo998
zuguo998 用这种方法,我取不到值,取到的是null
一年多之前 回复
lxk_1993
lxk_1993   Rxr 2016.04.20 08:54

和平常的intent一样 只是启动不是用startactivity(intent) 而是 startactivityforresult(intent,CODE);
Intent intent = new Intent(activityA.this,activityB.class);
intent.putExtra(KEY,VALUE);
startActivityForResult(intent,CODE);

CSDNXIAON
CSDNXIAON   2016.04.20 22:02

EventBus 页面传值并启动Activity
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

ch3265936
ch3265936   2016.07.29 13:08

startactivityforresult(intent,CODE);
Intent intent = new Intent(activityA.this,activityB.class);
intent.putExtra(KEY,VALUE);
startActivityForResult(intent,CODE); 正解

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!