我在ActivityGroup中有一个Activity。我有获取图像的代码:
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(intent,IMAGE_PICK);
启动选择图片的视图,我可以选择图像。但是当它返回到我的应用程序时,永远不会调用onActivityResult(既不在ActivityGroup中也不在Activity中)。
我已经检查了几个问题,以防万一我错过了接收器,我发现了Pick an image from the Gallery。但是所有的旗帜似乎都没了。
有谁知道问题可能是什么? 非常感谢你。
答案 0 :(得分:2)
这里可能存在与活动图层相关的问题。
父活动应该调用startActivityForResult,因此在启动图像选择器的活动内部使用它来代替
getParent().startActivityForResult(intent, IMAGE_PICK);
然后ActivityGroup应该接收onActivityResult事件。使用LocalAreaManager将事件传递给活动。
if (YourActivityName.class.equals(getLocalActivityManager().getCurrentActivity()){
getLocalActivityManager().((YourActivityName) getCurrentActivity()).handleOnActivityResult(requestCode, resultCode, data);
}
然后在您的活动中创建一个名为handleOnActivityResult的静态类,您将在其中处理活动结果。