Android基础知识复习之打开照相机拍照并获取照片

对于我来说,做一件事情:

首先要理清我的思路,我要打开照相机,我能想到的是:在Android中我要打开系统应用,肯定需要一个隐式意图,那就要查询Android照相机的源码,查看并找到意图过滤器的书写方式。然后开启照相机的Activity就可以实现照相的功能了。

打开照相机

在需要这个功能的类中,我们可以自定义一个方法openCamera();在这个方法里面就可以实现打开照相机的功能。

	/**
	 * 打开系统照相机
	 */
	public void openCamera(){
		//创建打开系统照相机的意图
		Intent openCameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);     
		//因为我们需要获得照相机拍的照片,所以必须要调用这个方法来开启Activity
		//请求码我们可以设置一个本类的静态的常量,我在这里就用100来表示了
		startActivityForResult(openCameraIntent, 100);  
	}

获取返回来的照片

既然我们刚才已经调用了有返回数据开启Activity的方法,那么我就应该实现Activity中的onActivityResult方法,在这个方法里面进行获取照相机返回来的照片。


@Override
	protected void onActivityResult(int requestCode, int resultCode, Intent data) {
		//判断请求码是否是请求打开相机的那个请求码
		if (requestCode == 100) {
			//获取照片数据
			Bitmap cameraPhoto = data.getParcelableExtra("data");
			//设置图片到指定的imageView控件上
			imageView.setImageBitmap(cameraPhoto);
		}
	}

最后一定不能忘了配置打开照相机的权限:

<uses-permission android:name="android.permission.CAMERA"/>



这就是我的总结。欢迎大家拍砖。



转载于:https://www.cnblogs.com/upuptop/p/11154454.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值