Как правильно перейти в другой вью контроллер при наличии Tab Bar?

swift
xcode

#1

Привет всем, помогите разобраться с такой ситуацией, застрял конкретно. Пишу приложение по учету калорий. UIKit. Структура такая:

Tab Bar Controller с двумя закладками - Продукты и Приемы пищи. От них соответственно две цепочки контроллеров. Они по структуре одинаковы, т…е., сначала Navigation VC, затем таблица со списком элементов, и затем экран для добавления и редактирования элемента.

По ходу задача добавить новый прием Пищи. Первый путь реализовал - создается новый Прием пищи в соответствующем стеке, из него делается переход на список продуктов, они выбираются и передаются обратно. Но пользователям удобно начинать с экрана Продукты, где они сразу выбирают нужные элементы, нажимают кнопку Добавить в прием пищи и должны перейти на экран создания Нового приема пищи.

Для перехода использую код:

let storyboard = UIStoryboard(name: "Main", bundle: nil)
let addEditMealVC = storyboard.instantiateViewController(identifier: "AddEditMeal")
show(addEditMealVC, sender: self)

Тут пока еще без передачи данных, только сам переход. И с ним начинаются проблемы. Когда происходит переход на экран Добавление нового приема пищи, то уже невозможно вернуться на экран Продукты. Т.е., даже используя Tab Bar все равно выбрасывают на экраны или со списком Приемов пищи или на экран Добавить новый прием пищи. Т.е., все остается во втором стеке и в первый перейти невозможно.

Что здесь нужно еще сделать, чтобы экран Продукты уходил из активного состояния и чтобы дальнейшая работа велась только на экране Добавление нового приема пищи? И чтобы Tab Bar работал нормально.