Created
July 16, 2020 16:15
-
-
Save rdelrosario/4366e9aa8196df6cf207c873c7b51caa to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Linq; | |
using CoreGraphics; | |
using PayCards; | |
using UIKit; | |
namespace PayCardRecognizerSample.iOS | |
{ | |
public partial class RecognizerViewController : UIViewController | |
{ | |
IPayCardsRecognizerPlatformDelegate _recognizerDelegate; | |
PayCardsRecognizer _recognizer; | |
UIButton _closeButton; | |
public RecognizerViewController(IPayCardsRecognizerPlatformDelegate recognizerDelegate) : base() | |
{ | |
_recognizerDelegate = recognizerDelegate; | |
} | |
public RecognizerViewController(IntPtr handle) : base(handle) | |
{ | |
} | |
public override void ViewDidLoad() | |
{ | |
base.ViewDidLoad(); | |
// Perform any additional setup after loading the view, typically from a nib. | |
_recognizer = new PayCardsRecognizer(_recognizerDelegate,PayCardsRecognizerResultMode.Async, container: View, UIColor.Green); | |
_closeButton = new UIButton(UIButtonType.Close); | |
_closeButton.TouchUpInside += Close; | |
} | |
private void Close(object sender, EventArgs e) | |
{ | |
DismissViewController(true, null); | |
} | |
public override void ViewWillAppear(bool animated) | |
{ | |
base.ViewWillAppear(animated); | |
_recognizer.StartCamera(); | |
var sb = View.Subviews.FirstOrDefault(); | |
if(_closeButton.Superview == null) | |
{ | |
_closeButton.SetTitle("Close", UIControlState.Normal); | |
sb.AddSubview(_closeButton); | |
_closeButton.Frame = new CGRect(sb.Bounds.Width - 100, 0, 100, 80); | |
} | |
} | |
public override void ViewDidDisappear(bool animated) | |
{ | |
base.ViewDidDisappear(animated); | |
_recognizer.StopCamera(); | |
} | |
public override void DidReceiveMemoryWarning() | |
{ | |
base.DidReceiveMemoryWarning(); | |
// Release any cached data, images, etc that aren't in use. | |
} | |
protected override void Dispose(bool disposing) | |
{ | |
base.Dispose(disposing); | |
_closeButton.TouchUpInside -= Close; | |
} | |
} | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment