为了账号安全,请及时绑定邮箱和手机立即绑定

Android摄像头基础

eclipse_xu 移动开发工程师
难度高级
时长 1小时23分
学习人数
综合评分9.70
67人评价 查看评价
9.9 内容实用
9.7 简洁易懂
9.5 逻辑清晰
  • 不能回显解决办法 if(requestCode==CAMERA_REQUESTTWO){ FileInputStream fis=null; try { fis=new FileInputStream(filePath); BitmapFactory.Options opts=new BitmapFactory.Options(); opts.inTempStorage = new byte[100 * 1024]; opts.inPreferredConfig = Bitmap.Config.RGB_565; opts.inPurgeable = true; opts.inSampleSize = 4; opts.inInputShareable = true; Bitmap photo= BitmapFactory.decodeStream(fis,null,opts); getPhotoTwo.setImageBitmap(photo); } catch (FileNotFoundException e) { e.printStackTrace(); }finally { try { fis.close(); } catch (IOException e) { e.printStackTrace(); } } }
    查看全部
  • 上回说到,当我们在一个程序中通过隐式的intent来显示相机的时候,如何我们有第三方的相机功能的时候,这个时候会系统会出现提示,要我们选择哪个程序来实现相机的功能,其原理是我们在该第三方程序中的某个activity的配置文件中配置了如下的形式: <activity....> <intent-filter> <action android:name="android.intent.action.IMAGE_CAPTURE"/> <category android:name="android.intent.category.DEFAULT"/> </intent-filter> </activity> 通过这种配置,在调用的时候就能够在本机上调用另外一个程序的功能,当然,具体的实现的功能还需要我们去通过代码实现;
    查看全部
  • 对于明确指出了目标组件名称的Intent,我们称之为“显式Intent”。对于没有明确指出目标组件名称的Intent
    查看全部
  • 隐式启动相机功能: case R.id.button1: // 执行启动相机的功能 // 通过隐式的方法来启动相机的功能,如果你的手机只有系统自带的相机功能时,会直接启动默认的相机,如果有多个选择的画,会弹出要选择的相机的种类 Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivity(intent); break;
    查看全部
  • 尽管Camera类不被建议使用,依然可以进行开发
    查看全部
  • 添加相机水印小功能 只需要在预览界面的layout布局中添加一个textview就行,同理也可以加入其它任何形式的控件,比如imageview等等 注意:点击拍照后,textview信息并不会默认保存到照片信息中去
    查看全部
  • 五、自定义camera总结: 1)建立camera对象 2)建立SurfaceView对象 3)将camera对象和SurfaceView对象进行绑定 在CustomCamera核心类中主要做了三件事 1)创建了camera的生命周期方法 在getCamera(){}中获取camera对象,并做初始化操作 Camera.open(); 在setStartPreview方法中将camera对象和surfaceView绑定,让camera开始进行取景工作,预览显示画面 在releaseCamera()方法中释放camera所占用的系统资源,同时解除camera和surfaceview 2)在activity生命周期方法中对camera进行管理 在onResume方法中获取camera对象,调用setStartPreview方法 在onPause方法中调用releaseCamera()方法 在surfaceView的三个方法中分别对相机生命周期进行管理 3)真正拍照方法startCapture 参数设置,同时在拍照的过程中将拍照的照片信息保存到临时文件中,展示在另外一个activity里 细节优化: 1)相机预览过程中并没有自动对焦,只有在点击拍照按钮之后,才会parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO); //设置对焦模式:自动对焦 优化方法:点击屏幕,实现自动对焦 实现:给surfaceview添加点击事件 mPreview.setOnClickListener(this); @Override public void onClick(View v) { mCamera.autoFocus(null);//不需要返回任何结果,只是预览界面 }
    查看全部
  • 接四 9)在onResume()中调用setStartPreview完成绑定 @Override protected void onResume() { super.onResume(); if (mCamera == null){ mCamera = getCamera(); if(mHolder != null){ setStartPreview(mCamera, mHolder); } } } 10)在releaseCamera()方法中,也需要释放SurfaceHolder资源 /** * 释放相机所占用的资源 * */ private void releaseCamera(){ if(mCamera != null){ mCamera.setPreviewCallback(null); //将相机回调置空,取消surfaceview和camera的关联 mCamera.stopPreview(); //取消相机的取景功能 mCamera.release(); //释放相机占用资源 mCamera = null; } } 11)实现SurfaceHolder的三个方法 @Override public void surfaceCreated(SurfaceHolder holder) { setStartPreview(mCamera, mHolder); } @Override public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { mCamera.stopPreview(); setStartPreview(mCamera,mHolder); } @Override public void surfaceDestroyed(SurfaceHolder holder) { releaseCamera(); }
    查看全部
  • 调用系统相机
    查看全部
    0 采集 收起 来源:知识点回顾

    2016-05-07

  • 设置照相属性
    查看全部
  • 没有笔记
    查看全部
  • 注册相机
    查看全部
    0 采集 收起 来源:知识点回顾

    2016-04-07

  • 注册自己的应用为相机应用
    查看全部
    0 采集 收起 来源:知识点回顾

    2016-04-06

  • 调用系统相机
    查看全部
    0 采集 收起 来源:知识点回顾

    2016-04-02

  • 获取拍摄图片2
    查看全部
首页上一页1234567下一页尾页

举报

0/150
提交
取消
课程须知
本门课程为Android中级课程,需要小伙伴们有一定的Android基础知识,当中涉及Intent,SurfaveView等内容。
老师告诉你能学到什么?
1.Android系统相机的调用(Intent) 2.自定义Android相机 3.学习自定义控件的使用

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!