Android Activity启动另一个Activity 并传递数据

在下列所有说明中 只有两个Activity A 和 B,并且B是通过A启动的。

A启动B

    很简单   就两行   在Activity A中,  启动   Activity  B
    intent = new Intent(ActivityA.this,ActivityB.class);
    startActivity(intent);

A启动B 并向B传递数据

    多了一行   绑定数据
    intent = new Intent(ActivityA.this,ActivityB.class);
    intent.putExtra("data","我是A");
    startActivity(intent);

B接收A的数据

    String sData = getIntent().getStringExtra("data").toString();
    //sData: 我是A

A启动B 向B传递数据 并接收B的应答

        private static final int request = 100;
        private static final int result = 200;

        intent = new Intent(ActivityA.this,ActivityB.class);
        intent.putExtra("data","我是A,收到请回答");
        startActivityForResult(intent,request);

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
           if(resultCode == result && requestCode == request){
                if(data != null){                    
                   String sData = data.getStringExtra("result").toString());
                   //sData: A,我是B,已经收到
                }
           }
    }

B接收数据 并对A 应答

    String sData = getIntent().getStringExtra("data").toString();
    //sData: 我是A,收到请回答

    Intent data = new Intent();
    data.putExtra("result","A,我是B,已经收到");
    setResult(200,data);


     //finish();结束ActivityB本身

你可能感兴趣的:(Android Activity启动另一个Activity 并传递数据)