Android中Zxing扫描二维码
2015-11-10 14:55
381 查看
需求:1.扫描界面不全屏。2.识别一次后不跳转,继续识别。
如何设置竖屏扫描,和调节全屏的扫描区域在此不再讲解,网上有一大堆教程。
这样识别区域就调整到
其中
如何设置竖屏扫描,和调节全屏的扫描区域在此不再讲解,网上有一大堆教程。
扫描界面不全屏
比如扫描界面有Toolbar,或者底部有选项卡的如何处理?
CameraConfigurationManager.initFromCameraParameters()方法默认会根据全屏的宽高来计算相机扫描区域的位置,只需修改此方法和
CameraManager.openDriver()的入参,把
SurfaceView的父容器当作参数传入。同时修改
CameraConfigurationManager.initFromCameraParameters()中计算
screenResolution的代码为
[code]screenResolution = new Point(scanArea.getWidth(), scanArea.getHeight());
这样识别区域就调整到
SurfaceView父容器正中了。当然,画扫描框的代码还是需要修改的。
识别一次后不跳转,继续识别。
修改实现扫描界面的Activity和
Fragment中的
handleDecode()方法,注释掉
inactivityTimer.onActivity(),然后把
CaptureActivityHandler.restartPreviewAndDecode()修改为
pulibc,在
handleDecode()方法最后添加如下代码:
[code]new Handler().postDelayed(new Runnable() { @Override public void run() { CameraManager.get().startPreview(); handler.restartPreviewAndDecode(); } }, 5000); }
其中
handler为
CaptureActivityHandler的对象。
相关文章推荐
- AndroidManifest 中original-package标签
- Android学习之SQLite
- Android Studio新建Module时弹出窗口显示不全的问题
- Android:APK反编译 (详解)
- Android 第三方登录
- Android 自定义viewpager选中点
- android图片合并: LayerDrawable层叠样式layer-list
- Android Studio插件开发实战(1)-准备
- Android中Parcel解析
- android shape的使用
- ListView左滑删除
- Android学习之SQLite
- Android:FragmentStatePagerAdapter分页
- Android事件分发机制(一)
- 学Android---布局(五)AbsoluteLayout
- Android adt-bundle开发环境搭建小记
- AndroidPN服务器源码简要分析
- android手机客户端连接服务器实现交互
- android 开源库
- Android自定义控件之应用程序首页轮播图