Intent传值,从第一个Intent传给第三个Intent,在第二个Intent时如何接收到第一个Intent传过来的值,并传给第三个Intent
每个activity传给另外一个activity时,通过intent存值,通过startactivity把intent传过去。http://www.cnblogs.com/zhangs1986/p/3603590.html
感谢你的回答,那把第一个Activity的值传给第三个Activity怎么传?
传值Intent本身就可以在调整的时候存放数据的。intent.putString(key,value),将value值传递出去。或者使用activityforresult 也可以。看你需求。只是要传值的话,不一定要用intent的,也可以广播,数据库,存储到本地shareprefence等方法
你可以具体说一下你的应用情景吗?我没太看懂你的问题,是在什么情况下进行这样的传值的,是页面跳转还是什么情况下。
用EventBus如何??
第一个Activity的值传给第二个Activity会么,同样,第二个Activity的值传给第三个Activity就可以了,至于中间怎么传,应该懂吧
你可以试一下eventbus
看你的描述,应该是指:ActivityA 跳转到ActivityB,ActivityB再跳转到ActivityC,问,怎么把值从ActivityA传到ActivityC。
很简单:
1、Intent传值A到B:
Intent intent =newIntent(ActivityA.this,ActivityB.class);
intent.putString("key","value");
startActivity(intent);
2、从B中把值取出来,再传给C,**我猜测你是少了这一步**:
Intent getintent=getIntent();
String value=getintent.getStringExtra("key");
Intent intent =newIntent(ActivityB.this,ActivityC.class);
intent.putString("key",value);
startActivity(intent);
3、C中把值取出来:
Intent getintent=getIntent();
String value=getintent.getStringExtra("key");
代码纯手打,方法名可能是错的,请勿照搬.....
第二个用 Intent intent = getIntent(); String value=intent.getStringExtra(" ");
然后把你的得到value,用和第一个相同的方法传给第三个
你这应用场景是怎么样的?如果仅仅只是单独跳转传值的话,你一级一级往下传就可以了啊
将值都放在Bundle中,再将Bundle存入Intent,新的Intent直接拿上个Intent的Bundle就好了