intent參數的回傳

1.ide

public class MainActivity extends Activity {
    private EditText editText1, editText2, editText3;
    private Button button;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        button = (Button) this.findViewById(R.id.button1);
        editText1 = (EditText) this.findViewById(R.id.editText1);
        editText2 = (EditText) this.findViewById(R.id.editText2);
        editText3 = (EditText) this.findViewById(R.id.editText3);
        button.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this,
                        NextActivity.class);
                String a = editText1.getText().toString().trim();
                String b = editText2.getText().toString().trim();
                intent.putExtra("message", a + "+" + b + "=" + "?");
                startActivityForResult(intent, 1000);
            }
        });
    }
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        // TODO Auto-generated method stub
        super.onActivityResult(requestCode, resultCode, data);
        if(requestCode==1000&&resultCode==1001){
            editText3.setText(data.getStringExtra("result"));
        }
    }

2.this

protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.next);
        button=(Button)this.findViewById(R.id.button1);
        textView=(TextView)this.findViewById(R.id.textView1);
        editText=(EditText)this.findViewById(R.id.editText1);
        Intent intent=getIntent();
        String message=intent.getStringExtra("message");
        textView.setText(message);
        button.setOnClickListener(new View.OnClickListener() {
            
            @Override
            public void onClick(View v) {
                String result=editText.getText().toString().trim();
                Intent intent=new Intent();
                intent.putExtra("result", result);
                //參數回傳
                setResult(1001, intent);
                finish();
            }
        });
    }

說明:用startActivityForResult(intent, 1000);啓動intent ,重寫onActivityResult方法,在跳轉的activity中用setResult(1001, intent);返回,並finish()結束spa

相關文章
相關標籤/搜索