startActivityForResult

来源:互联网 发布:readcube mac 编辑:程序博客网 时间:2024/04/28 03:17

这个机制是可以接收我们启动的新的activity的返回值,并且在调用的activity中作出相应的操作。

 

废话不多说,看代码吧:

 

覆写onActivityResult()函数

 

resultcode是被调用Acitivity返回的代码

requestCode是请求代码,可能有很多中请求吧,我是这样想的

 

@Override
 protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  // TODO Auto-generated method stub
  super.onActivityResult(requestCode, resultCode, data);
  switch (resultCode) {
  case RESULT_OK:
   setMyHeadId(data.getIntExtra(KEY, 0));
   mMyPhoto.setImageResource(Globals.IMAGE[getMyHeadId()]);
   mPersonInfoArray[0].setDisplayPicture(getMyHeadId());
   break;
  }
 }

 

被调用Activity的代码:

 

intent.putExtra(KEY,arg2);
HeadProtrait.this.setResult(RESULT_OK, intent);
finish();