public void Scan(IOverlaySettings overlaySettings)
        {
            this.overlaySettings = overlaySettings;
            var window = UIApplication.SharedApplication.KeyWindow;
            var vc     = window.RootViewController;

            if (overlaySettings is DocumentCaptureOverlaySettings)
            {
                this.documentCaptureRecognizerWrapper = ((DocumentCaptureOverlaySettings)overlaySettings).DocumentCaptureRecognizerWrapper;
            }
            else
            {
                this.documentCaptureRecognizerWrapper = null;
                this.highResImage = null;
            }
            if (overlaySettings is FieldByFieldOverlaySettings)
            {
                this.fieldByFieldCollection = ((FieldByFieldOverlaySettings)overlaySettings).FieldByFieldCollection;
            }
            else
            {
                this.fieldByFieldCollection = null;
            }

            recognizerRunnerViewController = MBViewControllerFactory.RecognizerRunnerViewControllerWithOverlayViewController(((OverlaySettings)overlaySettings).CreateOverlayViewController(this));

            vc.PresentViewController(ObjCRuntime.Runtime.GetINativeObject <UIViewController>(recognizerRunnerViewController.Handle, false), true, null);
        }
예제 #2
0
        public void Scan(IOverlaySettings overlaySettings)
        {
            recognizerBundle = null;
            documentCaptureRecognizerTransferable = null;
            documentCaptureRecognizerWrapper      = null;
            fieldByFieldCollection = null;
            fieldByFieldBundle     = null;

            androidHostActivity.ScanningStarted(this);
            var aOverlaySettings = (OverlaySettings)overlaySettings;

            if (aOverlaySettings is DocumentCaptureOverlaySettings)
            {
                documentCaptureRecognizerTransferable = ((DocumentCaptureUISettings)aOverlaySettings.NativeUISettings).DocumentCaptureRecognizerTransferable;
                documentCaptureRecognizerWrapper      = ((DocumentCaptureOverlaySettings)aOverlaySettings).DocumentCaptureRecognizerWrapper;
                ActivityRunner.StartActivityForResult(androidHostActivity.HostActivity, androidHostActivity.ScanActivityRequestCode, ((OverlaySettings)overlaySettings).NativeUISettings);
                return;
            }
            if (aOverlaySettings is FieldByFieldOverlaySettings)
            {
                var fieldByFieldOverlaySettings = (FieldByFieldOverlaySettings)aOverlaySettings;
                fieldByFieldCollection = fieldByFieldOverlaySettings.FieldByFieldCollection;
                var nativeOverlay = (FieldByFieldUISettings)fieldByFieldOverlaySettings.NativeUISettings;
                fieldByFieldBundle = nativeOverlay.FieldByFieldBundle;

                ActivityRunner.StartActivityForResult(androidHostActivity.HostActivity, androidHostActivity.ScanActivityRequestCode, nativeOverlay);
                return;
            }

            // assume given recognizerCollection was also used for constructing overlaySettings
            recognizerBundle = ((RecognizerCollection)((RecognizerCollectionOverlaySettings)aOverlaySettings).RecognizerCollection).NativeRecognizerBundle;
            ActivityRunner.StartActivityForResult(androidHostActivity.HostActivity, androidHostActivity.ScanActivityRequestCode, ((OverlaySettings)overlaySettings).NativeUISettings);
        }
 public FieldByFieldOverlaySettings(IFieldByFieldCollection fieldByFieldCollection)
     : base(new FieldByFieldUISettings((fieldByFieldCollection as FieldByFieldCollection).NativeFieldByFieldBundle))
 {
     FieldByFieldCollection = fieldByFieldCollection;
 }
 public IFieldByFieldOverlaySettings CreateFieldByFieldOverlaySettings(IFieldByFieldCollection fieldByFieldCollection)
 {
     return(new FieldByFieldOverlaySettings(fieldByFieldCollection));
 }
 public FieldByFieldOverlaySettings(IFieldByFieldCollection fieldByFieldCollection)
     : base(new MBFieldByFieldOverlaySettings((fieldByFieldCollection as FieldByFieldCollection).NativeFieldByFieldCollection))
 {
     nativeFieldByFieldOverlaySettings = NativeOverlaySettings as MBFieldByFieldOverlaySettings;
     FieldByFieldCollection            = fieldByFieldCollection;
 }