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时间内没有扫描 , 关闭当前扫描二维码界面

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏我的博客

DW支持jquery语法提示

第一种方法: 下载组建[点击下载jQuery_api_for_dwcs5] 1.把shared、Extensions、codehints三个文件夹复制到 ...

2533
来自专栏人工智能头条

深度学习与自然语言处理之五:从RNN到LSTM

1174
来自专栏极客生活

数据分析Excel技能之移动某行

单击第3行的「行标」选中第3行,把鼠标指向第3行的「下边缘」,当指针变为一个「小手」形状时,按住鼠标左键拖动鼠标便可以拖动第三行到某一个位置。

602
来自专栏Python小屋

Python分离GIF动画成为多帧图像

首先需要使用命令pip install pillow安装Python扩展库pillow。 from PIL import Image import os gif...

2695
来自专栏MixLab科技+设计实验室

DIY一个Sketch插件,生成猫猫狗狗的全家福

最近朋友圈都在玩的全家福: ? 看了下是使用 cocos2D 引擎制作的, http://www.cocos.com/creator 主要是图片合成,利用前端...

2777
来自专栏拂晓风起

Flex 可以拖出窗口的panel 拖动panel变为窗口

1084
来自专栏C++

python笔记:#014#综合应用

1567
来自专栏Python小屋

Python批量提取Word文件题库中的答案

问题描述:假设有Word文件“Python题库.docx”中有若干Python题目(目前有1000道,已在公众号内分享第一期1000道Python题库系列分享一...

2523
来自专栏mathor

第六届蓝桥杯决赛B组C/C++——密文搜索

812
来自专栏极客编程

用Java为Hyperledger Fabric(超级账本)开发区块链智能合约链代码之部署与运行示例代码

您已经定义并启动了本地区块链网络,而且已构建 Java shim 客户端 JAR 并安装到本地 Maven 存储库中,现在已准备好在之前下载的 Hyperled...

391

扫码关注云+社区