【Android】相机的简单调用
来源:互联网 发布:心蓝苹果软件 编辑:程序博客网 时间:2024/05/14 14:04
不多说,慢慢积累,希望有一天能玩转这个领域。
在项目开发中几乎所有程序都不可避免的要用上相机,因为你要上传头像,不可避免的就要有拍照功能。多数的软件会采用调用系统相机来完成这个业务。接下来要讲的就是调用系统相机拍照来保存成头像。
开始
网上相关的代码一大堆,但是我不能每次都去网上扒,这是一种不思进取的行为,扒过一次我们就要记住它,弄懂它!干掉它!
1、调用系统相机
就下面的两句,只要你执行这两句就能
// 就这样就打开相机了Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);startActivityForResult(intent, 1);//这个1的含义,是拍完照之后需要用到的。//当我们startActivityForResult(intent,1)拍完照之后就会调用onActivityResult()这个方法。下面介绍一下这个方法(注释为源码注释)
/** * Called when an activity you launched exits, giving you the requestCode * you started it with, the resultCode it returned, and any additional * data from it. The <var>resultCode</var> will be * {@link #RESULT_CANCELED} if the activity explicitly returned that, * didn't return any result, or crashed during its operation. * * <p>You will receive this call immediately before onResume() when your * activity is re-starting. * * <p>This method is never invoked if your activity sets * {@link android.R.styleable#AndroidManifestActivity_noHistory noHistory} to * <code>true</code>. *【通俗的讲就是,让你知道是谁调用的此方法,获取相应的data】 * @param requestCode The integer request code originally supplied to * startActivityForResult(), allowing you to identify who this * result came from. * 【通俗的讲就是,让你知道是那个Activity返回的数据,获取相应的data】 * @param resultCode The integer result code returned by the child activity * through its setResult(). * @param data An Intent, which can return result data to the caller * (various data can be attached to Intent "extras"). * * @see #startActivityForResult * @see #createPendingResult * @see #setResult(int) */ @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); // 这里的PHOTO_RESULT = 1;就是之前我们starActivity是传递的1;拍完照后就会调用此方法,并把照片放到Bundle 里面, if (requestCode == PHOTO_RESULT) { Bundle extras = data.getExtras(); if (extras != null) { Bitmap photo = extras.getParcelable("data"); ByteArrayOutputStream stream = new ByteArrayOutputStream(); //将图片压缩 photo.compress(Bitmap.CompressFormat.JPEG, 75, stream); //将图片设置到ImageView上展示即可。 header_img.setImageBitmap(photo); } } } /*不知道你时候已经了解,粘源码注释的意思是,如果你有不懂得知识可直接查看源码,我认为多数情况下源码还是描述的很清晰的*/
对,就这么简单,有疑问?直接在下面评论就行,我帮你解决!或者liumeng_android@163.com 邮给我。前辈,大神欢迎赐教!
结束,谢谢!鞠躬~
1 0
- 【Android】相机的简单调用
- android中相机的简单调用
- android --相机调用方式(简单的转载复制粘贴)
- Android 调用相机与图库的简单封装
- Android调用系统相机简单实现
- Android下相机的调用
- android简单的自定义相机
- Android 图片的裁剪与相机调用
- 调用Android相机拍照的问题
- 关于Android调用系统相机的问题
- Android调用系统相机的那些坑
- Android两种相机的调用方式
- Android相机和本地图片的调用
- android 调用相机 照片旋转的解决方案
- Android 调用系统相机回调后的处理
- Android调用相机的那些事
- Android简单调用相机Camera功能,实现打开照相功能
- Android调用相机接口
- libevent测试
- uva 327
- VS2010, VS2013 创建和调用 DLL
- Maya Python脚本建模之随机生成多边形并设定目标限制
- XML的基础和DOCTYPE字段的解析
- 【Android】相机的简单调用
- 安装Ubuntu系统心得
- 最近学到的android资料
- 谈一下OpenCV
- AngularJS进阶(九)控制器controller之间如何通信
- centos redHat 64位linux 安装iNode客户端
- Ubuntu 14.04lts安装vncserver
- MARKE下有用的IOS学习资料
- 图片透明度设定