首頁  >  問答  >  主體

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

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

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

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

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

我的订单 -(back)->我

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

PHP中文网PHP中文网2741 天前356

全部回覆(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
  • 取消回覆