Android开发 摄像头自动聚焦完美实现 --------------续上
2012-08-31 16:44
609 查看
/article/1652227.html前文已经实现了自动聚焦,但末尾遗留了一个小问题。经我研究发现,是我程序里面的自动聚焦所放的位置有问题。原来只在按下预览按钮,会执行initCamera,但当连续两次按预览后,程序就会没有入口了。也就是第二次if(myCamera!=null
&& !isView)是不满足的,第一次按预览之后,myCamera对象已经对创建,且isView=true,因此我增加了一个if判断这种情况。当myCamera创建后,且正在预览,如果这个时候再次按下预览,就会再次自动聚焦。源码如下:
&& !isView)是不满足的,第一次按预览之后,myCamera对象已经对创建,且isView=true,因此我增加了一个if判断这种情况。当myCamera创建后,且正在预览,如果这个时候再次按下预览,就会再次自动聚焦。源码如下:
public void initCamera() { if(myCamera == null && !isView) { myCamera = Camera.open(); Log.i(TAG, "camera.open"); } if(myCamera != null && !isView) { try { myParameters = myCamera.getParameters(); myParameters.setPictureFormat(PixelFormat.JPEG); myParameters.setPreviewSize(1280, 720); //myParameters.setFocusMode("auto"); myParameters.setPictureSize(2048, 1152); //1280, 720 myParameters.set("rotation", 90); myCamera.setDisplayOrientation(90); myCamera.setParameters(myParameters); myCamera.setPreviewDisplay(mySurfaceHolder); myCamera.startPreview(); isView = true; myCamera.autoFocus(mAutoFocusCallback); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); Toast.makeText(TestPhotoActivity.this, "初始化相机错误", Toast.LENGTH_SHORT).show(); } } if(myCamera != null && isView) myCamera.autoFocus(mAutoFocusCallback); }
相关文章推荐
- Android自动聚焦、摄像头拍照、缩放至标准大小的完整实现
- 【转】Android摄像头开发完美demo---(循环聚焦,缩放大小,旋转picture,查询支持的picturesize, ImageButton按键效果)
- 2013新春奉送:Android摄像头开发完美demo---(循环聚焦,缩放大小,旋转picture,查询支持的picturesize, ImageButton按键效果)
- 深度揭秘android摄像头的autoFocus-----循环自动聚焦的实现(Android Camera AutoFocus on Demand)
- 2013新春奉送:Android摄像头开发完美demo---(循环聚焦,缩放大小,旋转picture,查询支持的picturesize, ImageButton按键效果)
- Android自动聚焦、摄像头拍照、缩放至标准大小的完整实现
- android摄像头的autoFocus-----循环自动聚焦的实现
- 深度揭秘android摄像头的autoFocus-----循环自动聚焦的实现(Android Camera AutoFocus on Demand)
- Android摄像头开发完美demo---(循环聚焦,缩放大小,旋转picture,查询支持的picturesize, ImageButton按键效果)
- 深度揭秘android摄像头的autoFocus-----循环自动聚焦的实现(Android Camera AutoFocus on Demand)
- Android应用开发笔记(12):Android应用的自动升级、更新模块的实现
- Android开发:系统自动实现开机启动
- android开发步步为营之13:frame animation实现自动播放和手动播放
- Android开发:系统自动实现开机启动
- Android相机实时自动对焦的完美实现
- android开发游记:textview超过长度点击展开自动滚动(在一个TextView中实现,不增加布局复杂度)
- Android实现手机摄像头的自动对焦
- android xmpp开发 asmack实现断线自动重连
- Android相机实时自动对焦的完美实现
- Android开发:使用AutoInputAuthCode快速实现自动填写验证码