Ejemplo n.º 1
0
        public CameraPreview(Context context, bool defaultTorchOn, bool virbationOnDetected, bool startScanningOnCreate)
            : base(context)
        {
            Configuration.IsScanning = startScanningOnCreate;
            _windowManager           = Context.GetSystemService(Context.WindowService).JavaCast <IWindowManager>();
            _barcodeDetector         = new BarcodeDetector.Builder(context)
                                       .SetBarcodeFormats(Configuration.BarcodeFormats)
                                       .Build();
            _cameraSource = new CameraSource
                            .Builder(context, _barcodeDetector)
                            .SetRequestedPreviewSize(1280, 720)
                            .SetAutoFocusEnabled(true)
                            .Build();
            Configuration.CameraSource = _cameraSource;
            _surfaceView = new SurfaceView(context);
            _surfaceView.Holder.AddCallback(new SurfaceHolderCallback(_cameraSource, _surfaceView));
            AddView(_surfaceView);

            var detectProcessor = new DetectorProcessor(context, virbationOnDetected);

            detectProcessor.OnDetected += DetectProcessor_OnDetected;
            _barcodeDetector.SetProcessor(detectProcessor);
            if (defaultTorchOn)
            {
                AutoSwitchOnTorch();
            }
        }
Ejemplo n.º 2
0
        public CameraPreview(Context context)
            : base(context)
        {
            windowManager   = Context.GetSystemService(Context.WindowService).JavaCast <IWindowManager>();
            barcodeDetector = new BarcodeDetector.Builder(context)
                              .SetBarcodeFormats(Configuration.BarcodeFormats)
                              .Build();
            cameraSource = new CameraSource
                           .Builder(context, barcodeDetector)
                           .SetRequestedPreviewSize(640, 480)
                           .SetAutoFocusEnabled(true)
                           .Build();
            Configuration.CameraSource = cameraSource;
            surfaceView = new SurfaceView(context);

            surfaceView.Holder.AddCallback(new SurfaceHolderCallback(cameraSource, surfaceView));
            AddView(surfaceView);

            var detectProcessor = new DetectorProcessor(context);

            detectProcessor.OnDetected += DetectProcessor_OnDetected;
            barcodeDetector.SetProcessor(detectProcessor);
        }