您好,匿名用户
随意问技术百科期待您的加入

网易新闻客户端,跟贴页Nav上的backbutton是如何直接回到头条页的

0 投票

我的理解是:

1. 头条 -> 新闻页, 是一个master-detail 结构
2. 新闻页 -> 跟贴页, 是一个Flip变换
3. 问题出现在 跟贴页 Navbar上的backButton是如何实现的,看上去像新push到navController上一样。细看动画,可以看出来是要经过 新闻页 才回到 头条页的。

请问第3步这个代码如何实现? 或者别的实现方式?

EDIT:用custom segue实现了一个这种效果

- (void)perform
{
    UIViewController *src = self.sourceViewController;
    UIViewController *dst = self.destinationViewController;
    
    [UIView transitionWithView:src.navigationController.view
                      duration:1
                       options:UIViewAnimationOptionTransitionFlipFromLeft
                    animations:^{
                        [src.navigationController pushViewController:dst animated:NO];
                    }
                    completion:nil];
}

跟贴页的backbutton自己贴一个button,action里popToRootVC就可以了

[self.navigationController popToRootViewControllerAnimated:YES];
用户头像 提问 2012年 12月1日 @ Nocturne 上等兵 (262 威望)
分享到:

1个回答

0 投票
 
最佳答案

我怀疑第2步并没有走navController,而是直接做了View的操作,所以navBar上的back button不变。
第3步,当back button被点击的时候,会出发willDisappear方法,在这里把新闻页还原成正文。
也就是说他的结构是
NavController:[ 头条ViewController -> 新闻页ViewController(正文View;跟帖View)]

用户头像 回复 2012年 12月1日 @ Orianna 上等兵 (193 威望)
选中 2012年 12月1日 @Nocturne
提一个问题:

相关问题

+1 投票
1 回复 150 阅读
0 投票
1 回复 4 阅读
0 投票
1 回复 31 阅读
用户头像 提问 2012年 12月1日 @ Kennen 上等兵 (442 威望)
0 投票
1 回复 40 阅读
+1 投票
1 回复 34 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...