Android开发实践教程

关闭当前Activity2时向Activity1传递数据

分三步

第一步,启动Activity2:

​
Intent intent = new Intent(EditshareActivity.this,SelectBookActivity.class);
//请求码随便设置个数字,和其他不重复即可
startActivityForResult(intent,1);

第二步,传递数据:

    @Override
    public void onBackPressed() {
        super.onBackPressed();
        //按返回键回到上一个Activity
     Intent intent = new Intent();
        //传递对象book,使Book对象implements Serializable接口
     intent.putExtra("book", book);
     setResult(RESULT_OK,intent);
     finish();
    }
​
​

 

第三步,Activity1接收数据,在Activity1中重写如下方法:

 @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        switch (requestCode){
            case 1:
                if (resultCode == RESULT_OK){
                    Book book = (Book) data.getSerializableExtra("book");
                }
                break;
            default:
        }
    }

 

 

你可能感兴趣的:(Android)