Итак, моя проблема заключается в том, чтобы закрыть представленный контроллер представления, но не стек навигации. Я проверил стек навигации до и после отклонения Иерархия является контроллером вкладок -> SettingController -> ItemListController -> AddItemController в addItem представляет контроллер галереи, а после отклонения стека навигации контроллера галереи получают nil
let gallery = GalleryController()
gallery.delegate = self
present(gallery, animated: true, completion: nil)
и код отклонения -
controller.dismiss(animated: true, completion: nil)
, где код моей вкладки -
self.viewControllers = [createLiveOrder(), createFeed(), createHistoryController() ,createSettingController()]
. Создайте такой контроллер для вкладки, где идентификатором является контроллер вида навигации
func createSettingController() -> UIViewController {
let storyBoard = UIStoryboard(name: StoryBoard.setting.rawValue, bundle: nil)
let vc = storyBoard.instantiateViewController(withIdentifier: Controller.initController.rawValue)
vc.tabBarItem = setting
return vc
}
* 1012. * Но когда я установил раскадровку на работу нормально (я беру вкладку veiw controller на другой раскадровке и модуль настройки на другой раскадровке)