Activity传值与回传

记录一个基础问题, Activity传值与回传,后面遇到类似的问题就不用再问人了。

Activity传值与回传

Android Developers: 获取Activity的结果

链接只讲了怎么获取返回的数据,没有写返回数据的方法。

假设

FirstActivity 为初始Activity,SecondActivity 为跳转Activity

首先

在FirstActivity 通过startActivityForResult(Intent intent, int requestCode) 方法跳转Activity

Intent i = new Intent(FirstActivity.this, SecondActivity.class)

startActivityForResult(i,requestCode);

然后

在FirstActivity 重写 onActivityResult(int requestCode, int resultCode, Intent data)方法

三个参数分别为:请求码,返回码,返回数据

switch (requestCode) {

case requestCode:

​ if (resultCode == RESULT_OK) {

​ // do something

​ }

​ break;

最后

在SecondActivity 通过setResult(int resultCode, Intent data)方法返回数据

参数为:返回码,返回数据

Intent i = new Intent();

i.putExtra(“bean”,bean);

this.setResult(RESULT_OK,i);

finish();

即可在FirstActivity 的onActivityResult()方法中接收到回传的数据。


本文结束啦感谢您的阅读