Zxing сканер Камера зум - PullRequest
       31

Zxing сканер Камера зум

0 голосов
/ 28 сентября 2018

Я пытался решить проблему в течение 3 дней, но до сих пор не нашел ответа.Я хочу добавить ZOOM к камере во время сканирования qrcode через сканер Zxing.

build.gradle:

   implementation 'me.dm7.barcodescanner:zxing:1.9.8'

Xml:

<FrameLayout
    android:id="@+id/content_frame"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

</FrameLayout>

ScannerFragment:

    @Override
       public void onResume() {
         super.onResume();
         activateScanner();
     }

   private ViewGroup contentFrame;
   private ZXingScannerView zXingScannerView;

    private void activateScanner() {
    if(zXingScannerView != null) {

        if(zXingScannerView.getParent()!=null) {
            ((ViewGroup) 
     zXingScannerView.getParent()).removeView(zXingScannerView); // to 
      prevent crush on re adding view
        }
        contentFrame.addView(zXingScannerView);

        if(zXingScannerView.isActivated()) {
            zXingScannerView.stopCamera();
        }

        zXingScannerView.startCamera(camId);
        zXingScannerView.setFlash(isFlash);
        //zXingScannerView.setAutoFocus(isAutoFocus);
    }
}

Я добавил SeekBar, и с его помощью я хочу управлять масштабированием камеры.

private Camera cameraZoom;
@Override
public void onProgressChanged(SeekBar seekBar, int i, boolean b) {

   try { 
       Camera.Parameters parameters = cameraZoom.getParameters(); 
   } 
   catch (NullPointerException e) { 
       Log.d("NullP",e.getMessage()); 
   }
}

LOG:

D/NullP: Attempt to invoke virtual method 'android.hardware.Camera$Parameters android.hardware.Camera.getParameters()' on a null object reference

Я пытался сделать этоиспользуя приведенный выше код, но были только ошибки

Подскажите пожалуйста, как это сделать.

1 Ответ

0 голосов
/ 29 сентября 2018
if(cameraZoom == null){    
     cameraZoom = Camera.open(); 
}

Эта строка отсутствует в вашем коде.

...