'OnActivityResult'回调没有在片段子类中调用?在兼容包rev 2.0之后

时间:2012-01-29 07:10:25

标签: android

我在Fragment中遇到'onActivityResult'方法有问题 class ...我的意思是它(onActivityResult Callback)之后没有被调用 活动结束时为其调用者设置了一些结果......

所以我试图搜索任何相关信息或有关此问题 问题....我发现了一些与兼容包Rev相关的问题 2.0 ....

现在我正在使用兼容包v4(Rev 6)的最新版本,但是 我还有同样的问题...

这里是我的代码的相关部分......

开始活动时===========================

Intent intent = new Intent(getActivity(), NoteActivity.class);
intent.putExtra(Note._ID, id);
startActivityForResult(intent, NoteActivity.REQUEST_OPEN);


  

注意:NoteActivity.REQUEST_OPEN = 0x01;


从活动返回时==========================

setResult(Activity.RESULT_OK);
finish();
'onActivityResult'回调中的

=====================

@Override
       public void onActivityResult(int requestCode, int resultCode, Intentdata) {
               super.onActivityResult(requestCode, resultCode, data);
               Log.e(tag, "Req Code : "+requestCode+"res Code : "+resultCode);
               switch(requestCode){
               case NoteActivity.REQUEST_OPEN:
                       switch(resultCode){
                       case Activity.RESULT_OK:
                               Log.e(tag, "Given ID is : "+data.getLongExtra(Notes._ID, -1));
                               refresh(SortOrder.DATE);
                               break;<br>
                       case Activity.RESULT_CANCELED:
                               Log.e(tag, "Not Saved");
                               refresh(SortOrder.DATE);
                               break;
                       }
                       break;
               }
       }

请帮我解决这个问题....

  

注意:我在托管中检查了'onActivityResult'方法   活动也是......但它被正确地调用了...所以我猜'开始活动'和'从它返回'没有问题......

BR

1 个答案:

答案 0 :(得分:0)

你必须覆盖包含活动的onActivityResult才能获得片段 onActivityResult被调用。

@Override
  public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data); 
    }