搜索

首页  >  问答  >  正文

ios - 如何让栈中的页面总是返回到固定页面?

项目中,有很多途径进入到我的订单中.如:

  1. 我(顶级页面)->我的订单

  2. 首页(顶级页面)->商品详情->支付->支付成功->我的订单.

但是需求是,从我的订单只能返回到的页面.即:

我的订单 -(back)->我

在这种需求下,如何来实现呢?

PHP中文网PHP中文网2811 天前382

全部回复(3)我来回复

  • ringa_lee

    ringa_lee2017-04-18 09:27:34

    下面提供一个思路,可以根据自己的项目情况进行修改

    假定你的项目是如图所示的架构。则可以在订单界面添加下面的代码。

    
    
    - (void)viewDidAppear:(BOOL)animated {
        [super viewDidAppear:animated];
    
        UINavigationController *nav = self.tabBarController.viewControllers.lastObject;
        NSMutableArray *vcs = [NSMutableArray array];
        [vcs addObject:nav.viewControllers.firstObject];
        [vcs addObject:self];
        [nav setViewControllers:vcs animated:NO];
        [self.tabBarController setSelectedIndex:self.tabBarController.viewControllers.count-1];
    }
    

    回复
    0
  • 阿神

    阿神2017-04-18 09:27:34

    方法一:

    //回到根视图
    navigationController?.popToRootViewControllerAnimated(animated: Bool)
    

    方法二:

    //回到指定视图
    navigationController?.popToViewController(UIViewController, animated: Bool)
    
    

    回复
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-18 09:27:34

    模态 要么整个伪导航

    回复
    0
  • 取消回复