Java 如何将数据从第五个活动发送到第一个活动?
我正在使用5个活动。从活动1到活动2,从act2到act3,从act3到act4,从act4到act5。 活动2将数据传送到act3,与此类似,act5接收act2、act3、act4的数据,然后将所有数据发送到ACT1 我的第一项活动Java 如何将数据从第五个活动发送到第一个活动?,java,android,Java,Android,我正在使用5个活动。从活动1到活动2,从act2到act3,从act3到act4,从act4到act5。 活动2将数据传送到act3,与此类似,act5接收act2、act3、act4的数据,然后将所有数据发送到ACT1 我的第一项活动 I{ Intent i= new Intent(firstactivity.this, secondactivity.class); startActivityForResult(i, 10); } @Override protecte
I{
Intent i= new Intent(firstactivity.this, secondactivity.class);
startActivityForResult(i, 10);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 10) {
String a= data.getStringExtra("Value1");
String b= data.getStringExtra("Value2");
String c= data.getStringExtra("Value3");
String d= data.getStringExtra("Value4");
String showall = a+", "+b+", "+c+", "+d;
address.setText(showall);
}
static ArrayList<String> arlist=new ArrayList<String>();
arlist.add("value");
arlist.add("value1");
arlist.add("value2");
我的第二项活动
Intent intent = new Intent(secondactivity.this, thirdactivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
intent.putExtra("Value1", firstvalue);
startActivity(intent);
我的第五项活动
Intent intent = new Intent(fourthactivity.this, fifthactivity.class);
intent.putExtra("Value1", geta);
intent.putExtra("Value2", getb);
intent.putExtra("Value3", getc);
intent.putExtra("Value4", getd);
intent.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
setResult(10);
finish();
请尝试以下内容:
Intent intent = new Intent(fifthactivity.this, firstactivity.class);
intent.putExtra("Value1", geta);
intent.putExtra("Value2", getb);
intent.putExtra("Value3", getc);
intent.putExtra("Value4", getd);
intent.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT|Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
startActivity(intent);
然后在第一个活动的onCreate
(以防活动被破坏)或onNewIntent
(如果您的活动仍在运行,但您将其带到前面并以新的意图更新)中处理传递的结果
I{
Intent i= new Intent(firstactivity.this, secondactivity.class);
startActivityForResult(i, 10);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 10) {
String a= data.getStringExtra("Value1");
String b= data.getStringExtra("Value2");
String c= data.getStringExtra("Value3");
String d= data.getStringExtra("Value4");
String showall = a+", "+b+", "+c+", "+d;
address.setText(showall);
}
static ArrayList<String> arlist=new ArrayList<String>();
arlist.add("value");
arlist.add("value1");
arlist.add("value2");
您最好使用单个活动,并在其中交换一些片段。数据将属于活动,所有片段都可以处理。使用共享首选项比来回发送更好。希望问题得到解决PLZ建议我如何执行此操作。检查更新。如果您的列表不安全,请执行此操作。