Не может перейти от UITableViewController, который встроен в UIContainerView - PullRequest
0 голосов
/ 08 февраля 2019

На раскадровке я помещаю существующий UITableViewController в UIContainerView, который живет в UIViewController.Эта задача UIViewController заключается в простом управлении различными состояниями экрана путем переключения между двумя представлениями контейнера:

enter image description here

Работает UITableViewControllerпрекрасно, прежде чем я сделал эти изменения.Теперь, когда вы нажимаете на ячейку в таблице, ничего не происходит.Предполагается (и ранее) перейти к другому новому контроллеру представления.Код довольно прост:

override func numberOfSections(in tableView: UITableView) -> Int {
    return 1
}

override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return notifs.modelData.count
}

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "notificationsTableViewCell", for: indexPath) as! NotificationsTableViewCell

    cell.tag = indexPath.row
    cell.updateCellProperties(notification: notifs.modelData[indexPath.row],
                              indexPathRow: indexPath.row)

    return cell
}

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    guard let notificationId = notifs.modelData[indexPath.row].id else { //not the pubId
        return
    }

    performSegue(withIdentifier: showPublicationSegueIdentifier, sender: notificationId)
}

Я проверил и попробовал несколько вещей:

  • представление таблицы: взаимодействие с пользователем включено
  • Я положилточка останова в didSelectRowAtIndexPath, при которой никогда не вызывается
  • , UITableViewController фактически является UITableViewController
  • UITableViewController делегатом табличного представленияи источник данных

Мне кажется весьма вероятным, что нахождение внутри UIContainerView связано с проблемой, но я не могу точно понять, что это за проблема.

Кто-нибудь знает, почему это может происходить?

...