iOS — Перезагрузите UITableView с помощью кнопки возврата UINavigationBar без всплывающего представления

#ios #uitableview #uinavigationcontroller #back-button

#iOS #uitableview #uinavigationcontroller #кнопка возврата

Вопрос:

Я искал везде, но безуспешно. Я хочу, чтобы кнопка возврата UINavigationController перезагружала мой TableView до тех пор, пока я не достигну определенной отметки, а затем открывала представление. Чтобы попытаться сделать это немного более понятным, у меня есть UITableViewController, который загружает каталоги с сервера. Я хочу, чтобы пользователь запускался с root, а затем мог перемещаться по теоретической бесконечной цепочке каталогов, и я перезагружу tableview для каждой выбранной ячейки.

Все это работает, но навигация назад. NavigationController выводит представление вместо того, чтобы возвращать мне каталог (перезагружая TableView), как ожидалось. Как я могу переопределить кнопку «Назад», чтобы просто обновить TableView?

Комментарии:

1. Я думаю, что с точки зрения пользовательского интерфейса будет более разумно использовать новый контроллер табличного представления, если вы отображаете структуру папок, например, в приложении Dropbox. Стек контроллера навигации работает невероятно хорошо для этого, и вы можете по существу повторно использовать и бесконечно вводить один и тот же класс контроллера табличного представления (на основе дерева папок). Только мои два цента.

2. интересно. Есть ли где-нибудь пример того, как они это делают? Просто добавьте новый tableviewcontroller в стек navigationbar, выбрав ячейку?

3. Просто нажмите тот же класс UITableViewController и сообщите ему, что dir загружать. То, что это один и тот же класс, не означает, что вы не можете инициализировать их из одного и того же класса.