Android項目實戰(四十五):Zxing二維碼切換橫屏掃描

Demo連接java

默認是豎屏掃描,可是當咱們在清單文件中配置橫屏顯示的時候:android

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

這時候掃描,會發現掃描效果變形,方向不對。git

 

可按如下步驟進行修改:github

一、修改CameraConfigurationManager.java中的setDesiredCameraParameters函數,函數

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

     

 

二、修改CameraManager.javagetFramingRectInPreview()函數中修改爲以下,即將x改成y  , y改成xcode

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;  

 

三、修改DecodeHandler.java中的decode函數blog

 

四、其它可修改部分參照Github Demo 圖片

可設置的:
掃描框中的中間線的寬度
掃描框中的中間線的與掃描框左右的間隙
中間那條線每次刷新移動的距離
四個綠色邊角對應的長度 、 寬度、顏色 、透明度
中間滑動線的最頂端位置 、 最低端位置
掃描線  是一張圖片
遮擋層顏色 , 正方形以外的 區域的顏色
閃點顏色

其餘功能:
閃光燈開啓
從本地獲取圖片讀取二維碼
當前xxx時間內沒有掃描 , 關閉當前掃描二維碼界面
相關文章
相關標籤/搜索