您的位置:首页 > 其它

活动之间数据的传递

2015-08-28 19:12 141 查看
活动1:First 活动2:Second

情况1:

First向Second传递数据

First.java

[code]    Button button1 = (Button) findViewById(R.id.buttonf1);
    button1.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {

                Button button = (Button)findViewById(R.id.buttonf1);
                button.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View v) {
                        Intent intent = new Intent(FirstUI.this, SecondUI.class);
                        String data = "Hello Second";
                        intent.putExtra("data", data);
                        startActivity(intent);
                    }
                });
            }
        });


Second.java

[code]    protected void onCreate(Bundle save) {
        super.onCreate(save);

        requestWindowFeature(Window.FEATURE_NO_TITLE);

        setContentView(R.layout.second_layout);

        // 接收数据

        try {
            intent = getIntent();
            String data = intent.getStringExtra("data");
            Log.d("data", data);//在日志中打印出来数据
        } catch (Exception e) {
        }
    }


日志显示



情况2:Second向First传递数据

First.java

[code]    Button button1 = (Button) findViewById(R.id.buttonf1);
    button1.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {

                Button button = (Button)findViewById(R.id.buttonf1);
                button.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View v) {
                        Intent intent = new Intent(FirstUI.this, SecondUI.class);
                        startActivityForResult(intent, 1);
                    }
                });
            }
        });
    }

    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        switch(requestCode){
        case 1:
            if (resultCode == 2) {
                String returnData = data.getStringExtra("data");
                Log.d("data", returnData);
            }
        }
    }


Second.java

[code]public void onBackPressed() {
        Intent intent = new Intent();
        String data = "Hello First";
        intent.putExtra("data", data);
        setResult(2, intent);
        finish();
    }


日志显示

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: