Я пытаюсь создать 2 разных контроллера представления по умолчанию, которые затем вызываются и выполняют указанное действие в зависимости от того, что было в ячейке. Вы бы создали контроллер вида в основной раскадровке, используя xib и т. Д.?Swift - Как реализовать цикл defaultviewcontroller
В основном у меня есть xml-файл, который я обрабатываю, а затем создаю представления таблицы до тех пор, пока не дойду до последней (подробной) страницы для элемента. По моему мнению, лучше использовать один и тот же tableviewcontroller несколько раз вместо создания 1 для каждого уровня. Должен ли я создавать петлю сеге?
В настоящее время существуют проверки, чтобы убедиться, что я использую правильный сегмент.
ли вы pefrom в SEGUE с:
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let cell = tableView.cellForRow(at: indexPath as IndexPath)
tableView.deselectRow(at: indexPath as IndexPath, animated: true)
segueLocation = hNTUL[(indexPath as NSIndexPath).row].locationLevel
segueTitle = hNTUL[(indexPath as NSIndexPath).row].locationTitle
if segueLocation == "TableView" {
performSegue(withIdentifier: "defaultDetailSeague", sender: cell)
let destinationVC = DefaultDetailViewController()
destinationVC.detailTitle = segueTitle
}
if segueLocation == "DetailView" {
performSegue(withIdentifier: "defaultTableSeague", sender: cell)
let destinationVC = DefaultTableViewController()
destinationVC.tableTitle = segueTitle
}
}
Также возможно, что я пытаюсь идти об этом неправильный путь.
Я также искал примеры проектов, но не нашел ни одного, который мог бы вести меня в правильном направлении.
Мысли?
Спасибо, что вы указали больше кода, но мой ответ ниже, все еще стоит. Вам нужна реализация 'prepare (for: sender:)', и у вас ее нет. Пожалуйста, прочитайте, пожалуйста, что я сказал в своем ответе. – matt
Будет ли это то, о чем вы говорите? 'переопределить FUNC подготовить (для Segue: UIStoryboardSegue, отправитель: Любой) { если segue.identifier == "LevelTwo"{ , если пусть indexPath = self.tableView.indexPathForSelectedRow { Пусть контроллер = segue.destination как! LevelTwoTableViewController пусть mCaty = mainCat [(indexPath в NSIndexPath) .row] controller.selectedName = mCaty.mainCategoriesTitle }} } ' – Number1
Да, только такие вещи, хотя я не думаю, что тест на' я .tableView.indexPathForSelectedRow' будет работать так, как вы ожидаете (я мог ошибаться в этом). – matt