1、页面1跳转到页面2:
Intent intent=new Intent(MainActivity.this,Main2Activity.class);
startActivityForResult(intent,1);
2、页面2返回页面1数据:
Intent intent = new Intent();
intent.putExtra("aaa","back");
setResult(2,intent);
3、页面1接收页面2返回的数据(需要onActivityResult方法)
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 1) {
if(resultCode == 2){
String aaa = data.getStringExtra("aaa);
Toast.makeText(this, aaa, Toast.LENGTH_SHORT).show();
}
}
}
这个方法的三个参数 第一个参数 requestCode:它是你在第一个界面点击传过去的那个常量 然后在setResult时候会从第二个界面传回来给到这里 是用于判断在那个界面跳转过去的 用于区分 比如说 你有很多个界面都跳转到了TowAcivity进行数据回调 那么 就可以通过 requestCode 进行判断到底是返回给哪个界面的 防止返回的数据错误
第二个参数 resultCode :它是用于区分第二个界面传回来的数据是哪个 方便区分 进行下一步操作
第三个参数 data: 它是一个 intent 值 也就是你第二个界面传回来的数据 你可以通过键值对的方法从里面取出对应的数据
|