首页 > 代码库 > 返回数据给上一个活动

返回数据给上一个活动

1. 当点击第二个活动的时候,返回到第一个活动。传数据。

// 第一个activity@Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);       // setContentView(R.layout.activity_main);  // 创建视图        setContentView(R.layout.my_layout);        // 找到对应的button来监听事件        findViewById(R.id.butStartAnotherAty).setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                Intent i = new Intent(MainActivity.this, AnotherAty.class);                // 这个 1 是你传过去的一个标示                startActivityForResult(i, 1);  //使用可以返回数据的方式来启动新的activity            }        });        System.out.println("onCreate");    }    // 接受从第二个activity返回来的数据方法,会在 onStart 前执行    @Override    protected void onActivityResult(int requestCode, int resultCode, Intent data) {        switch (requestCode) {            case 1 :   // 这个是 startActivityForResult 方法启动活动的时候传过去的标示                if (resultCode == RESULT_OK) {                    String returnData = data.getStringExtra("data_return");                    System.out.print(returnData);                }                break;            default:                break;        }    }//第二个activityprivate TextView tv;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_another_aty);        findViewById(R.id.returnMainActivity).setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                Intent intent = new Intent();                intent.putExtra("data_return", "hello MainActivaty");                setResult(RESULT_OK, intent);    // 设置返回 intent                finish();  // 销毁            }        });    }

 

 

2. 点击返回按钮的时候,第二个activity传送数据到第一个activity

    // 第一个activity和上面的一样        // 第二个activity只需要监听这个back键的方法就好了    // 点击 Back键回到第一个Activity    @Override    public void onBackPressed() {        Intent intent = new Intent();        intent.putExtra("data_return", "hello MainActivaty for onBackPressed");        setResult(RESULT_OK, intent);    // 设置返回 intent        finish();    }

 

返回数据给上一个活动