首先是通过Intent 请求照相机的服务
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE,
null);
startActivityForResult(intent, REQUST_CODE_CAPTURE_CAMEIR);
} else {
Toast.makeText(getActivity(), "请确认已经插入SD卡", Toast.LENGTH_LONG)
.show();
}
然后在回调里面获取图片
<pre name="code" class="java">public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUST_CODE_CAPTURE_CAMEIR&& resultCode ==context.RESULT_OK) {
//有些人通过Uri获取图片的路径,但拍照后有可能返回为空,所以使用这种方法取到图片
final Bitmap photo = data.getParcelableExtra("data");
if (photo != null) {
imageView1.setImageBitmap(photo);
}
}
}