Android startActivityForResult用法

2017-08-01  本文已影响0人  OrionW

Activity之间的跳转一般使用startactivity(intent)

1、如果A--B,需要B返回一个数据给A,那么就可以使用startactivityforresult(intent,requestCode),请求码的值随便设置,但必须>=0。而当返回A的时候,就在A的

protectedvoidonActivityResult(int requestCode,int resultCode, Intent data) {  } 这个方法中回调。

requestCode为你跳转时设置的,resultCode为B返回的时候设置的。

2、如果A也想给B传递数据,那么就需要intent.putexstra();

A中

Intent intent = new Intent(A.this,B.class);

intent.putExstra();//如果需要传递数据的话,传递的有各种类型,使用相应的方法

startactivityforresult(intent,resquestcode);

B中

//如果A传递数据的话

Intent intent = getIntent();

Bundle bundle = intent.getExtras();

bundle.getString();//这里要看你传递的数据类型

当返回A的时候

Intent mIntent =newIntent();

mIntent.putExtra("change01","1000");

mIntent.putExtra("change02","2000");

// 设置结果,并进行传送

this.setResult(resultCode, mIntent);

finish();

上一篇下一篇

猜你喜欢

热点阅读