2017-07-12 87 views
0

我有一個Activity掃描QR碼使用ZXingScannerView如何在使用ZXingScannerView時處理屏幕旋轉?

OnCreate方法我產生看法是這樣的:

mScannerView = new ZXingScannerView(this) { 
      @Override 
      protected IViewFinder createViewFinderView(Context context) { 
       IViewFinder viewFinder = super.createViewFinderView(context); 
       if (viewFinder instanceof ViewFinderView) { 
        ((ViewFinderView) viewFinder).setSquareViewFinder(true); 
       } 
       return viewFinder; 
      } 
     }; 
setContentView(mScannerView); 

然後,當屏幕旋轉時,佈局很不好這樣的形象: enter image description here

所以在OnConfigurationChanged方法我嘗試停止掃描儀再次啓動它。即使我試圖重新創建掃描儀

佈局現在看起來不錯。但QR掃描器不起作用。它不識別QR碼。

請告訴我我錯在哪裏?

+0

其最好加婁代碼使用'mScannerView.resumeCameraPreview(本);',而不是再次啓動它。 – Piyush

+0

@Piyush **恢復**並幫助刷新佈局。但掃描儀仍然無法識別QR碼。 – TOP

回答

1

清單文件只是添加

<activity 
     android:name=".your class name" 
     android:configChanges="orientation|screenSize"    
     android:windowSoftInputMode="adjustPan" /> 

您還在清單

<supports-screens 
    android:anyDensity="true" 
    android:largeScreens="true" 
    android:normalScreens="true" 
    android:smallScreens="true" 
    android:xlargeScreens="true" />