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

简介: Demo链接默认是竖屏扫描,但是当我们在清单文件中配置横屏显示的时候: 这时候扫描,会发现扫描效果变形,方向不对。 可按以下步骤进行修改:1、修改CameraConfigurationManager.

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

 

相关文章
|
4月前
|
Java Android开发 开发者
Android使用zxing生成二维码
这是一篇关于如何在Android应用中生成二维码的教程。首先,需要导入zxing库的jar包。布局文件中包含一个按钮、一个图片控件和一个输入框。用户可以在输入框中输入想要转换为二维码的内容,点击按钮后,程序会通过实例化QRCodeWriter类并使用for循环绘制二维码图像,最后将生成的二维码显示在ImageView上。源码展示了具体的实现细节,包括布局定义与Java逻辑代码,便于开发者理解和实践。
102 2
|
11月前
|
缓存 Java Shell
Android 系统缓存扫描与清理方法分析
Android 系统缓存从原理探索到实现。
378 15
Android 系统缓存扫描与清理方法分析
|
缓存 Java Android开发
Android 9.0 WiFi 扫描结果上报和获取流程
Android 9.0 WiFi 扫描结果上报和获取流程
602 0
|
物联网 Android开发
Android Ble蓝牙App(七)扫描过滤
Android Ble蓝牙App(七)扫描过滤
437 0
|
物联网 API Android开发
Android Ble蓝牙App(一)扫描(下)
Android Ble蓝牙App(一)扫描(下)
371 0
|
XML 物联网 Android开发
Android Ble蓝牙App(一)扫描(上)
Android Ble蓝牙App(一)扫描(上)
526 0
|
Android开发
Android项目实战(四十四):Zxing二维码切换横屏扫描
原文:Android项目实战(四十四):Zxing二维码切换横屏扫描 Demo链接 默认是竖屏扫描,但是当我们在清单文件中配置横屏显示的时候: 这时候扫描,会发现扫描效果变形,方向不对。
1255 1
|
4天前
|
开发工具 Android开发
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
48 11
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
|
14天前
|
Java 开发工具 Maven
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
59 6
|
2月前
|
安全 数据库 Android开发
在Android开发中实现两个Intent跳转及数据交换的方法
总结上述内容,在Android开发中,Intent不仅是活动跳转的桥梁,也是两个活动之间进行数据交换的媒介。运用Intent传递数据时需注意数据类型、传输大小限制以及安全性问题的处理,以确保应用的健壯性和安全性。
160 11

热门文章

最新文章