1.打开相机:
public void openCamera()
{
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);// 启动系统相机
startActivityForResult(intent, 100);
}
注意:当我们打开相机的时候,会进入“相机活动”,并且会执行MediaStore.ACTION_IMAGE_CAPTURE相应的动作。
这个动作做什么呢,就是当我们拍摄完成后会结束这个活动并且向之前的活动返回一个消息包,包里面包含图片数据,所以获取图片数据就非常之简单了
2.拍摄完毕
你只需要点√,它就会将图片发回你之前的活动
3.接收数据
ctrl+o重写这个函数:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch (requestCode)
{
case 100:
bitmap = data.getParcelableExtra("data");
ctImageShow.setImageBitmap(bitmap);
break;
}
}
4.注意,你之前openCamera的时候你带的操作码是100,这个用来作为两个活动之间用于通信的暗号,仔细屡屡这个逻辑,至于怎么显示图片,请看ImageView: