У меня есть UITableViewController, который продвигает некоторые представления при нажатии на ячейку:
switch(indexPath.row) {
case kFollowerSectionUpdatesCountRow:
stockTwitsView.reloadUpdates = TRUE;
stockTwitsView.showHomeButton = TRUE; //** reversed, true means hide the button
stockTwitsView.profileName = self.user_name;
stockTwitsView.msgSource = self.message_source;
[self.navigationController pushViewController:stockTwitsView animated:YES];
break;
case kFollowerSectionFollowerCountRow:
followSectionDetailView.username = self.user_name;
followSectionDetailView.loadFollowers = TRUE;
[self.navigationController pushViewController:followSectionDetailView animated:YES];
break;
case kFollowerSectionFollowingCountRow:
followSectionDetailView.username = self.user_name;
followSectionDetailView.loadFollowing = TRUE;
[self.navigationController pushViewController:followSectionDetailView animated:YES];
break;
}
Все хорошо работает, за исключением kFollowerSectionUpdatesCountRow
. Это продвинет представление, но если я нажимаю кнопку "Назад", это загружает то же представление снова вместо возвращения? Я должен нажать назад снова для возвращения к моему исходному экрану. Этого не происходит ни с одним из других продвигаемых представлений.
Не уверенный, почему?
ОБНОВЛЕНИЕ: То, что нечетно, является этим разделом, 3-й раздел моего UITableView. Если я изменяю его на 2-й раздел, контроллер представления только продвинут однажды. Почему?
Вы случайно не вызываете pushViewController при переходе "назад"? Если да, то не делайте этого. Нет необходимости вызывать pushViewController при переходе назад к родительскому вызывающему элементу.