我在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
答案 0 :(得分:0)
你必须覆盖包含活动的onActivityResult才能获得片段 onActivityResult被调用。
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
}