Стек навигации должен содержать только ОДИН вид - PullRequest
1 голос
/ 07 октября 2011

У меня есть контроллер навигации и табличное представление с несколькими записями. Если я выберу Entry, будет добавлен новый DetailViewController. в DetailViewController вы можете провести вправо, чтобы выдвинуть DetailViewController следующей записи tableView. Он работает довольно хорошо, но если люди проводят около 10 раз, им нужно нажать кнопку «Назад» 10 раз, чтобы вернуться к tableView. Так что я ищу хороший способ, чтобы люди давили назад и приходили к tableView.

Я думал о воссоздании кнопки и использовании popToRootViewControllerAnimated:

но есть ли другой способ решить мою проблему? может быть, что-то вроде удаления всех представлений в стеке навигации и сохранения только последнего.

1 Ответ

0 голосов
/ 16 ноября 2011

Вместо нажатия нового DetailViewController вы можете просто обновить детали с деталями из следующей / предыдущей записи из табличного представления.

Вы бы потеряли анимацию смахивания / толчка, но это можно обойти.

Другая возможность заключается в использовании:

[self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:1] animated:YES];

Вам необходимо выяснить, какой индекс имеет tableViewController. Если это контроллер корневого представления, то индекс должен быть 0.

...