【问题标题】:Getting captured image in onActivityResult method在 onActivityResult 方法中获取捕获的图像
【发布时间】:2012-12-02 01:48:03
【问题描述】:

我对下面的代码有点怀疑

@Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            Intent i=new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);

            startActivityForResult(i, 0);
        }

    });
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // TODO Auto-generated method stub
    super.onActivityResult(requestCode, resultCode, data);

    if(requestCode==0 && resultCode==RESULT_OK ){

        Bundle extras = data.getExtras();
        //get the cropped bitmap
        Bitmap thePic = extras.getParcelable("data");


        ImageView image =(ImageView) findViewById(R.id.imageView1);
        image.setImageBitmap(thePic);

    }
}

在 extras.getParcelable("data");此处的代码行“数据”作为 key 传递给 parcelable 对象。

我的问题是,是否已经在类中定义了名称为“数据”的键?或如何接受的任何原因。

【问题讨论】:

    标签: android android-intent android-activity camera android-camera


    【解决方案1】:

    相机应用负责将缩略图添加到您在onActivityResult(...) 中收到的Intent。它基本上将Bitmap 值添加到以"data" 作为键的意图。因此,可以尝试从返回的意图中按键获取该值。这也在 Android 开发者网站上的 Taking Photos Simply tutorial 中得到了展示:

    Bundle extras = intent.getExtras();
    mImageBitmap = (Bitmap) extras.get("data");
    

    但是,根据经验,我可以说并非所有相机应用都支持这种行为。我不会依赖实际存在的数据键,或者返回的意图 nog 是 null

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-23
      • 1970-01-01
      • 2012-10-30
      • 2017-02-09
      • 2011-06-30
      相关资源
      最近更新 更多