前のアクティビティにデータを返す

1277 ワード

前のアクティビティ:
Intent intent = new Intent(MainActivity.this,SecondActivity.class);
startActivityForResult(intent,1);

次のアクティビティでコンポーネントをクリックした場合:
 btn2 = (Button) findViewById(R.id.btn2);
        btn2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent();
                intent.putExtra("data_Result","YES!");
                setResult(RESULT_OK,intent);
                finish();
            }
        });

次のアクティビティでBACKキーをクリックした場合
 public void onBackPressed() {
        Intent intent = new Intent();
        intent.putExtra("data_Result","YES!");
        setResult(RESULT_OK,intent);
        finish();

    }

最後のアクティビティは、返されたデータを受信します.
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        switch (requestCode){
            case 1:
                if(resultCode==RESULT_OK){
                    String returnData = data.getStringExtra("data_Result");
                    Log.d("FirstActivity",returnData);
                }
                break;
            default:
        }
    }