Я искал решение этого вопроса в течение нескольких часов, и я не могу найти способ построить UITableViewCell в Интерфейсном Разработчике, связать его действия с родительским UINavigationController, а затем использовать ячейка для отображения информации между двумя отдельными экземплярами UITableView. После нескольких часов исследований я структурировал свои файлы так:
UIViewController, НЕ созданный в Интерфейсном Разработчике, который является моим базовым представлением для всего проекта. Содержит IBAction, который помещает UserInfoController в стек.
UITableViewCell, созданный в Интерфейсном Разработчике, который содержит кнопку, которая при нажатии должна выдвинуть новый UIViewController, назовем его UserInfoController, поверх стека. Владельцем файла является вышеуказанный UIViewController.
UIView, созданный в Интерфейсном Разработчике, который я использую в вышеупомянутом UIViewController. Этот UIView содержит верхний раздел UIView с данными и нижний UITableView, который отображает UITableViewCells. Я хочу сделать так, чтобы при нажатии кнопки в UITableViewCell, отображаемой в этом UIView, он активировал действие в родительском UIViewController.
Я чувствую, что мне здесь чего-то не хватает. Я также хотел бы в конечном итоге создать еще один UIViewController с UIView и UITableView, который также должен использовать UITableViewCell и выполнить действие первого UIViewController. Однако, поскольку я даже не могу заставить это работать для одного из моих представлений, я подожду, пока я разберусь с вышеуказанной проблемой.
EDIT:
Мой внутренний инстинкт подсказывает мне, что это проблема с аутлетом. В настоящее время мой UIViewController действует как владелец файла для UIView, который содержит UITableView. UIView также содержит код для UITableViewDelegate и UITableViewDataSource, который использует мой UITableViewCell для отображения соответствующей информации. UITableViewCell - это собственный Nib, но его владельцем файла также является UIViewController. Однако, когда я нажимаю кнопку внутри UITableViewCell, событие регистрируется в UIView, несмотря на то, что там нет выходов. Причина, по которой я хочу, чтобы UITableViewCell представлял собой собственный Nib, заключается в том, что я хочу использовать его повторно для других представлений UIViewController позже.
Я могу нормально просматривать UITableViewCell, но не могу заставить его вести себя правильно. Как я могу связать действие кнопки в моем UITableViewCell не с файлом, содержащим его делегат UITableView и DataSource, а с UIViewController, который его содержит?
Надеюсь, это немного яснее: -D