Android Camera Intent onActivityResult()使用开发者时出现空错误。Android指南

Android Camera Intent onActivityResult()使用开发者时出现空错误。Android指南,android,android-camera-intent,Android,Android Camera Intent,我正在尝试使用基本的拍照意图返回缩略图并将其设置为图像视图,如开发人员网站上所示: static final int REQUEST_IMAGE_CAPTURE = 1; private void dispatchTakePictureIntent() { Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); if (takePictureIntent.resolveActivity(ge

我正在尝试使用基本的拍照意图返回缩略图并将其设置为图像视图,如开发人员网站上所示:

static final int REQUEST_IMAGE_CAPTURE = 1;

private void dispatchTakePictureIntent() {
    Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
        startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
    }
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) {
        Bundle extras = data.getExtras();
        Bitmap imageBitmap = (Bitmap) extras.get("data");
        mImageView.setImageBitmap(imageBitmap);
    }
}
希望我得到一个空的对象引用

无法将结果ResultInfo{who=null,request=1,result=-1,data=Intent{act=inline data(has extras)}}传递到活动。。。java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“void android.widget.ImageView.setImageBitmap(android.graphics.Bitmap)”。。。在第行“mImageView.setImageBitmap(imageBitmap);”


更新:不仅仅是一个如何修复空对象的问题,更重要的是如何将
onActivityResult()
融入生命周期的其余部分。为什么Android忘记了分配
mImageView=findviewbyd(R.id.image\u视图)onActivityResult()
时,在
onCreate()
onResume
中的code>?在活动生命周期内,
onActivityResult()
是否作为单独的特殊事件?如果是,则应更新处的开发人员指南以包含该变量。

变量
mImageView
为空,您可以使用findviewbyd(R.id.idImageView)设置引用

酷,你的崩溃真的不是一个重复的十几个问题,有NPE的活动结果

调用您的
onActivityResult()
回调时,活动的mImageView字段为null。最有可能的情况是,这是因为您的活动是在摄影机满足您的意图后由系统重新创建的。你应该放线

mImageView = findViewById(R.id.your_imageView);

在活动的
onCreate()
中,或者甚至可以在活动的
onActivityResult()中执行该操作
onResume()
。在任何情况下,您都必须确保加载了相应的布局。

您的imageview为空?您的imageview mImageView=findViewById(R.id.Your_imageview)在哪里;你检查了吗:啊,是的,我在
onCreate()
中引用了它,但是将它添加到
onActivityResult()
中似乎起到了作用。我读到这个错误是因为位图是空的,而不是视图。它只在
mImageView=findViewById(R.id.your_imageView)时才起作用
在activityResult()的
中调用。
。即使在
onCreate
onResume
中设置,对象也是空的。您是对的:
onResume()
在这种情况下不好,
onActivityResult()
以前发生过。