1

我对下面的代码有一点疑问

@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"); 此处的代码行“数据”作为可打包对象的键传递。

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

4

1 回答 1

0

将缩略图添加到Intent您收到的onActivityResult(...). 它基本上使用as 键Bitmap为意图添加了一个值。"data"因此,可以尝试从返回的意图中按键获取该值。这在 Android 开发者网站上的简单拍照教程中也有演示:

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

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

于 2012-12-14T03:39:41.963 回答