Ошибка «View Controller A недостижима, поскольку не имеет точек входа» после добавления нового View Controller B и его замены на начальный контроллер представления - PullRequest
0 голосов
/ 17 января 2020

Эта ошибка кажется распространенной, но я не могу найти похожую root причину, как у меня, поэтому решения не работают.

У меня изначально был один View Controller (V C 1 ) в моем приложении, встроенном в контроллер навигации (N C).

Затем я добавил второй V C 2 и удалил N C из V C 1. Затем я встроил V C 2 в N C и сделал его контроллером начального представления.

V C 2 - это контроллер табличного представления, который при касании ячейки:

  • создает экземпляр V C 1,
  • изменяет переменную, а
  • использует navigationController для pu sh V C 2

V C 2 содержит webView, который выполняет большую часть работы.

После настройки всего этого я получил точку останова и предупреждение, что:

“View Controller“ is unreachable because it has no entry points, and no identifier for runtime access via -[UIStoryboard instantiateViewControllerWithIdentifier:].

Я добавил новый N C вернемся к V C 1, думая, что это все исправит, но это не так. Просто изменилось на

“Navigation Controller“ is unreachable because it has no entry points, and no identifier for runtime access via -[UIStoryboard instantiateViewControllerWithIdentifier:].

Не уверен, достаточно ли этой информации, но есть ли здесь потенциально ясное решение?

Редактировать: Добавление функции didSelectRowAt в V C 2, которая берет вас к V C 1, если это помогает:

    override func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) {
        if let vc = storyboard?.instantiateViewController(withIdentifier: "Browser") as? ViewController {
            vc.selectedWebsite = websites[indexPath.row]
            vc.approvedWebsites = websites
            navigationController?.pushViewController(vc, animated: true)
        }
    }

1 Ответ

0 голосов
/ 17 января 2020

В раскадровке выберите контроллер представления, затем Identity Inspector в правой панели и установите Identity -> Storyboard ID в «Браузер»

...