首页 > 学院 > 开发设计 > 正文

实现一个简单的手机拍照效果

2019-11-08 00:18:44
字体:
来源:转载
供稿:网友

1.得到Activity里面的ID

调用
sv_main_sss.getHolder().addCallback(new SurfaceHolder.Callback()这个方法
2.打开照相机
Camera.open();设置参数
Camera.Parameters parameters=camera.getParameters();
   //格式    parameters.setPictureFormat(PixelFormat.JPEG);         //质量    parameters.set("jpeg-quality",85);    camera.setParameters(parameters);    //展示画面    try {        camera.setPReviewDisplay(sv_main_sss.getHolder());      //开启预览        camera.startPreview();    } catch (IOException e) {        e.printStackTrace();    }}再进行拍照效果,要压缩,不然消耗内存比较大
//拍照camera.takePicture(null, null,new Camera.PictureCallback() {    @Override    public void onPictureTaken(byte[] data, Camera camera) {        //压缩       Bitmap bitmap= BitmapFactory.decodeByteArray(data,0,data.length);        try {            FileOutputStream fos=new FileOutputStream("/mnt/sdcard/koo/"+System.currentTimeMillis()+".png");            bitmap.compress(Bitmap.CompressFormat.PNG,85,fos);            camera.stopPreview();            camera.startPreview();        } catch (FileNotFoundException e) {            e.printStackTrace();        }
还要在清单文件配置下权限
<uses-permission android:name="android.permission.CAMERA" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
拍照之前的预览效果
拍照完成的效果

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表