Android有返回值的Activity

在原Activity中,使用this.startActivityForResult(intent, 1);第一個參數是Intent對象,包含要到達的Activity信息,第二個參數是requestCode,當到達的Activity返回時可以得到這個值。

 

在原Activity中覆蓋

[java]protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
        // TODO Auto-generated method stub  
        super.onActivityResult(requestCode, resultCode, data); 
        Toast.makeText(this, requestCode+"   "+resultCode, Toast.LENGTH_SHORT).show(); 
    } 
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  // TODO Auto-generated method stub
  super.onActivityResult(requestCode, resultCode, data);
  Toast.makeText(this, requestCode+"   "+resultCode, Toast.LENGTH_SHORT).show();
 }

在到達的Activity返回後會調用這個方法。

requestCode是在this.startActivityForResult(intent, 1)中設置的。resultCode是在到達的Activity中使用setResult(10);來設置的,data是從到達後的Activity傳過來的。

通過這樣,我們就可以在Activity返回後更新這個界面。

 

 

作者 張譯成

發佈留言