我有一些带有几个子活动的tabActivity。来自活动 A 我启动相机或图库:
final Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, Utils.getImagePath().getPath());
intent.putExtra("return-data", true);
startActivityForResult(intent, Utils.CROPPER_PICK_FROM_CAMERA);
和
final Intent intent = new Intent(Intent.ACTION_PICK);
intent.setType("image/*");
startActivityForResult(intent, Utils.CROPPER_PICK_FROM_FILE);
结果返回到活动 A
我还有活动 B ,它会进行图像裁剪(我从活动 A 开始)。但它的结果返回到TabActivity(在某些手机上它返回活动 A )。我该如何预防?
修改:
我从活动A 开始活动B(进行裁剪)(不是来自活动,来自其他类)
final CropStarter starter = new CropStarter(mContext);
starter.startCropping(path);
public void startCropping()
{
final Intent intent = new Intent(mContext, CropImage.class);
intent.setData(mImagePath);
intent.putExtra("return-data", true);
intent.putExtra(MediaStore.EXTRA_OUTPUT, Utils.getImagePath());
intent.putExtra("outputFormat", "PNG");
mContext.startActivityForResult(intent, Utils.CROPPER_CROP_FROM_CAMERA);
}
编辑2:
如果我使用此代码从A开始活动B:
final Intent intent = new Intent(this, CropImage.class);
它具有相同的结果:结果返回 tabActivity
答案 0 :(得分:0)
所以问题是我忘了在清单中添加活动标签:
android:configChanges="bla bla bla |screenSize
在某些设备上,相机视图会触发屏幕尺寸更改,因此我没有处理这种情况。