案例一:在当前按钮点击拍照按钮,拍完照后将照片显示在当前界面
效果图:
第一步:先跳转到拍照界面
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, CAMERA_REQUEST);
第二步:显示照片,重写onActivityResult方法
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == CAMERA_REQUEST && resultCode == RESULT_OK) {
Bitmap photo = (Bitmap) data.getExtras().get("data");
imageView.setImageBitmap(photo);
}
}
Demo下载地址: http://download.csdn.net/detail/k2514091675/9822891
案例二:在当前按钮点击拍照按钮,拍完照后将照片显示在另一个界面
效果图:
第一步:跳转到拍照界面
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);//实例化Intent对象,使用MediaStore的ACTION_IMAGE_CAPTURE常量调用系统相机
startActivityForResult(intent, CAMERA_RESULT);//开启相机,传入上面的Intent对象
第二步:将拍照完后的照片传递到另一个界面
/**
* 用onActivityResult()接收传回的图像,当用户拍完照片,或者取消后,系统都会调用这个函数
*/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK && requestCode == CAMERA_RESULT) {
//xActivity就是启动的另一个界面,在xxxActivity中,
Intent intent2 = new Intent(this, A.class);
//从Intent中获取附加值
Bundle extras = data.getExtras();
//从附加值中获取返回的图像
Bitmap datas = (Bitmap) extras.get("data");
//intent2.setData(data);
//将数据附加给intent2
intent2.putExtra("zp", datas);
startActivityForResult(intent2, 101);
}
}
第三步:根据参数接收传递过来的信息
//将intent1的数据传递到intent2
Bundle extras = getIntent().getExtras();
Bitmap zp = (Bitmap) extras.get("zp");
mPlayPicture.setImageBitmap(zp);