У меня есть главный ViewController, в котором у меня есть tableView с пользовательским tableViewCell, внутри которого я добавил несколько объектов представления и кнопку. Я хочу представить другой ViewController, когда я нажал на кнопку в ячейке, а также мне нужно отправить (данные TableCell, где произошло событие клика) и Получить (выбранное значение из текста pickerView и другого ярлыка) из всплывшего ViewController, а затем, наконец, Мне нужен способ (например, закрыть кнопку), чтобы закрыть его.Представить ViewController как popover
Я могу отправить данные ячейки, где событие щелчка произошло в камере, используя следующий код
@IBAction func cellBtnClicked(_ sender: Any) {
let foodItem:FoodItem?
let indexPath : IndexPath
if let button = sender as? UIButton {
let cell = button.superview?.superview as! UITableViewCell
indexPath = self.tableView.indexPath(for: cell)!
let hotel = hotels[indexPath.section]
foodItem = hotel.menu[indexPath.row]
тогда я загрузку, что данные клетки в контроллер поповера и пытаюсь представить его как поповер
let popoverContent = self.storyboard?.instantiateViewController(withIdentifier:"ShowPopoverVC") as! MiniCartVC
popoverContent.foodItem = foodItem
popoverContent.modalPresentationStyle = UIModalPresentationStyle.popover
if let popover = popoverContent.popoverPresentationController {
let viewForSource = sender as! UIView
popover.sourceView = viewForSource
// the position of the popover where it's showed
popover.sourceRect = viewForSource.bounds
// the size you want to display
popoverContent.preferredContentSize = CGSize(width: 200, height: 135)
popover.delegate = self
}
self.present(popoverContent, animated: true, completion: nil)
}
Но это не приходит как пирог вместо как Segue, расширив всю View.Also Мне нужен способ, чтобы отправить данные из поповер VC в MainVC на отвергая его.
Пожалуйста, дайте мне знать, если есть способ правильно его реализовать. Спасибо, что любой ресурс как эталонная цель тоже прекрасен.
Вот поповер учебник -> https://www.youtube. ком/смотреть? v = 48UA06EwfrM. Вы также захотите использовать шаблон делегирования для отправки данных из вашего popover в родительский контроллер представления. http://useyourloaf.com/blog/quick-guide-to-swift-delegates/ – Adrian