У меня есть серия ВК. Есть ресторан MenuTableV C, который встроен в навигацию V C. Когда пользователь добавляет элемент в shoppingCartV C, который открывается модально, мне нужно отправить массив элементов корзины на платеж V C, который необходимо нажать (не показано модально). Так что я делаю, отклоняю корзину для покупок и пытаюсь вывести sh экран оплаты, но ничего не работает. Вот что я попробовал:
Способ 1 (с использованием простого делегата): я отклоняю корзину для покупок и затем из ресторанаMenuV C перехожу к платежу V C:
@IBAction func didTapNext(_ sender: UIButton) {
dismiss(animated: true)
delegate?.payNow()
}
И в функции делегата в меню V C у меня есть это:
func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if let paymentViewController = segue.destination as? PaymentViewController {
paymentViewController.cartItemArray = self.cartItemArray
}
}
Ну, все, что происходит, это то, что модальная корзина покупок отклоняется, но оплата V C не открывается.
Метод 2: В функции делегата у меня есть это:
let paymentViewController = self.storyboard?.instantiateViewController(identifier: "PaymentViewController") as? PaymentViewController
self.navigationController?.pushViewController(paymentViewController!, animated: true)
Это работает, но я не могу передать массив, потому что нет перехода.
Я не могу просто перейти от shoppingCartV C к платежу C, потому что он открывает платеж C модально. Я тоже не могу это сделать, потому что тогда его почему-то толкают дважды. Это UX нужно закрыть ShoppingCartV C и затем перейти на платеж V C.
Что мне делать?