【发布时间】:2017-06-16 07:20:12
【问题描述】:
我有一个活动,当点击 ImageView 时,它将打开第二个活动以选择和裁剪图像。
此过程运行良好。在第二个activity中,当用户对图片满意时,会点击DONE按钮返回上一个activity,裁剪后的图片会显示在点击的ImageView中。
问题:从第二个活动返回后,第一个活动不再显示......在我的真实设备中,如果我尝试检查打开的 Android 菜单,它会返回启动 Android 菜单应用程序,我的应用程序在那里,但即使我再次点击它,它也不会进入第一个活动......似乎它再次重复选择和裁剪图像的过程......奇怪:S
这是我用来从一个活动转移到另一个活动的相关代码:
关于我的第一个活动:
public void onImageViewClicked(View v){
this.clickedImageView = (ImageView) v;
Intent intent = new Intent(this, CropImages.class);
switch (v.getId()){
case R.id.imgvW_1:
startActivityForResult(intent, 1111);
break;
case R.id.imgvW_2:
startActivityForResult(intent, 2222);
break;
case R.id.imgvW_3:
startActivityForResult(intent, 3333);
break;
}
}
结果应该在这里:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK){
if (requestCode == 1111){
Bitmap b = (Bitmap) data.getParcelableExtra("Image");
img_encoded_1 = Utilities.encode64Bitmap(b);
clickedImageView.setImageBitmap(b);
}
}
}
第二个活动(CropImages.java)做了很多事情......但应该像这样结束:
public void onDoneClicked(View v){
// cropped Bitmap stored in cropped
Intent returnIntent = getIntent();
returnIntent.putExtra("Image", cropped);
setResult(RESULT_OK, returnIntent);
finish();
}
任何线索为什么第一个活动消失并且真实设备只显示欢迎/主 Android 屏幕??
如果这有帮助:第二个活动也会启动一个意图,用于从 Gallery 或 Camera 中选择图像....不过我认为这并不重要....
如果这有帮助...似乎第一个活动上的onActivityResult 永远不会执行...该方法上的TOAST 永远不会显示。
【问题讨论】:
-
您可能点击了 Debug 'app' 而不是 Run 'app'
-
是我的错,忽略上次编辑...我删除...
-
好的,现在可以了吗?
-
不....同样的情况,关闭第二个活动后...回到“Android桌面”...你知道我的意思
-
上传完整代码,包括清单