ios - presentViewController和pushViewController跳转页面之后,如何回到最初的页面?
黄舟
黄舟 2017-04-17 17:10:06
0
3
649

A页面跳到B页面。用模态切换presentViewController的方式跳转

UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:VC];
    [self presentViewController:nav animated:YES completion:nil];

这样跳到了B页面。B又跳到了C页面。C又跳到D页面。

用导航控制器入栈的方式切换,代码如下:

[self.navigationController pushViewController:regSecondStepVC animated:YES];

现在问题来了。我要从D页面。直接回到A页面。应该怎么回?


好像这样解决了

[((UIViewController*)weakSelf.navigationController.viewControllers[0]) dismissViewControllerAnimated:YES completion:^{
                    [[NSNotificationCenter defaultCenter] postNotificationName:NotificationLoginCallBack object:nil];
                }];

只是还不算完美。首先切到了B页面,然后B消失,回到了A页面。
如果能从D直接动画切到A。不经过B页面,更完美。不过目前算可用了
希望有更完美的方案

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

모든 응답(3)
黄舟

어제는 시간이 없어서 자리에 앉아 아무렇지도 않게 대답을 했는데요, 오늘 테스트해본 결과는 이렇습니다.

self.navigationController의 hideViewControllerAnimated 메서드를 직접 호출합니다.
애니메이션 효과가 직접 아래쪽으로 밀립니다.

迷茫

for (self.navigationController.viewControllers의 UIViewController *temp) {

으아아아
洪涛

블로거님, 저도 그런 기능을 하고 있어요. 드디어 이 문제를 해결하셨나요

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿