public override void RowSelected(UITableView tableView, NSIndexPath indexPath) { UINavigationController navigationController; PaymentConfiguration config; tableView.DeselectRow(indexPath, true); Demo example = (Demo)indexPath.Row; var theme = themeViewController.Theme.GetStripeTheme(); switch (example) { case Demo.PaymentCardTextField: var cardFieldViewContoller = new CardFieldViewController(); cardFieldViewContoller.Theme = theme; navigationController = new UINavigationController(cardFieldViewContoller); navigationController.NavigationBar.SetStripeTheme(theme); PresentViewController(navigationController, true, null); break; case Demo.AddCardViewController: config = new PaymentConfiguration(); config.RequiredBillingAddressFields = BillingAddressFields.Full; var viewController = new MockAddCardViewController(config, theme); viewController.Delegate = this; navigationController = new UINavigationController(viewController); navigationController.NavigationBar.SetStripeTheme(theme); PresentViewController(navigationController, true, null); break; case Demo.PaymentMethodsViewController: config = new PaymentConfiguration(); config.AdditionalPaymentMethods = PaymentMethodType.All; config.RequiredBillingAddressFields = BillingAddressFields.None; config.AppleMerchantIdentifier = "dummy-merchant-id"; var paymentMethodsViewController = new PaymentMethodsViewController(config, theme, customerContext, this); navigationController = new UINavigationController(paymentMethodsViewController); navigationController.NavigationBar.SetStripeTheme(theme); PresentViewController(navigationController, true, null); break; case Demo.ShippingInfoViewController: config = new PaymentConfiguration(); config.RequiredShippingAddressFields = PKAddressField.PostalAddress; var shippingAddressViewController = new ShippingAddressViewController(config, theme, "usd", null, null, null); shippingAddressViewController.Delegate = this; navigationController = new UINavigationController(shippingAddressViewController); navigationController.NavigationBar.SetStripeTheme(theme); PresentViewController(navigationController, true, null); break; case Demo.ChangeTheme: navigationController = new UINavigationController(themeViewController); PresentViewController(navigationController, true, null); break; default: throw new NotImplementedException(); } }
public void PaymentMethodsViewControllerFinished(PaymentMethodsViewController paymentMethodsViewController) { paymentMethodsViewController.NavigationController.PopViewController(true); }
public void PaymentMethodsViewControllerCancelled(PaymentMethodsViewController paymentMethodsViewController) { DismissViewController(true, null); }
public void PaymentMethodsViewControllerFailedToLoad(PaymentMethodsViewController paymentMethodsViewController, NSError error) { DismissViewController(true, null); }