Android项目实战(四十四):Zxing二维码切换横屏扫描

Posted lonelyxmas

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android项目实战(四十四):Zxing二维码切换横屏扫描相关的知识,希望对你有一定的参考价值。

原文:Android项目实战(四十四):Zxing二维码切换横屏扫描

Demo链接

默认是竖屏扫描,但是当我们在清单文件中配置横屏显示的时候:

  <activity
            android:name=".CaptureActivity"
            android:screenOrientation="landscape"
            android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />

这时候扫描,会发现扫描效果变形,方向不对。

 

可按以下步骤进行修改:

1、修改CameraConfigurationManager.java中的setDesiredCameraParameters函数,

      camera.setDisplayOrientation(90);   --->    camera.setDisplayOrientation(0);

     技术分享图片

 

2、修改CameraManager.javagetFramingRectInPreview()函数中修改成如下,即将x改为y  , y改为x

rect.left = rect.left * cameraResolution.x / screenResolution.x;  
rect.right = rect.right * cameraResolution.x /  
screenResolution.x;  
rect.top = rect.top * cameraResolution.y / screenResolution.y;  
rect.bottom = rect.bottom * cameraResolution.y /  
screenResolution.y;  

 

3、修改DecodeHandler.java中的decode函数

技术分享图片

 

4、其它可修改部分参照Github Demo 

可设置的:
扫描框中的中间线的宽度
扫描框中的中间线的与扫描框左右的间隙
中间那条线每次刷新移动的距离
四个绿色边角对应的长度 、 宽度、颜色 、透明度
中间滑动线的最顶端位置 、 最低端位置
扫描线  是一张图片
遮挡层颜色 , 正方形之外的 区域的颜色
闪点颜色

其他功能:
闪光灯开启
从本地获取图片读取二维码
当前xxx时间内没有扫描 , 关闭当前扫描二维码界面

 

以上是关于Android项目实战(四十四):Zxing二维码切换横屏扫描的主要内容,如果未能解决你的问题,请参考以下文章

Android实战——Zxing实现二维码扫描

Android二维码工具zxing使用

Android二维码功能实现,在程序内嵌入ZXing项目

Android二维码功能实现,在程序内嵌入ZXing项目(转)

(转载)[Android开发]zxing扫描结果乱码

Android:使用ZXing生成二维码(支持加入Logo图案)