1. 程式人生 > >Activity之間回撥傳值

Activity之間回撥傳值

主頁面主要程式碼片段:

myButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
               Intent intent=new Intent();
                intent.setClass(MainActivity.this,TestTwo.class);
                intent.putExtra("value1","希望之光 竇唯");
                startActivityForResult(intent, 1);// 請求碼設定為:1

            }
        });
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if(data!=null)
            if(requestCode==1&&resultCode==2){
                String backValue=data.getStringExtra("backValue");
                myButton.setText(backValue);
            }
    }


目標頁面:

back.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                intent=getIntent();
                String value=intent.getStringExtra("value1");
                back.setText(value);
                intent.putExtra("backValue","Don't Break My Heart 王菲");
                setResult(2,intent);//返回碼設為:2
                finish();
            }
        });