android使用startActivityForResult简明教程

适用场景:

从activity A 跳转到 B,且希望B在做完某些操作后回到A时告诉A去做某些事情(如A是列表,B是发表文章,发表文章后告诉A刷新页面)。

1.首先在activity A中使用startActivityForResult(Intent intent,int requestCode)跳转到B

Intent intent=new Intent();  
intent.setClass(this, B.class);  
intent.putExtra("userId",userId);  
startActivityForResult(intent, 0);//此处设置为>=0的数值,在onActivityResult() 的回调方法中会返回该数值

2.在B中使用以下代码返回A

setResult(RESULT_OK, intent); //此处的intent可以用A传过来intent,或者使用新的intent  
finish();

3.在A中获取回调信息

protected void onActivityResult(int requestCode, int resultCode, Intent data) {     
     if(requestCode==0&&resultCode==RESULT_OK){     
                         //to do something     
    }     
 }

更详细的介绍:Activity的跳转与传值 http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2012/1111/538.html