【问题标题】:How should I pop to a specific view controller?我应该如何弹出到特定的视图控制器?
【发布时间】:2012-07-25 17:43:39
【问题描述】:

我正在创建一个通用的 iOS 应用程序,它本质上是一个长订单页面。用户从购物车屏幕开始,然后通过一系列 4 个不同的屏幕(不同的 VC)线性前进(使用 UINavigationController)。一旦他们到达最后一个屏幕,新闻提交,我希望应用程序将用户带回购物车屏幕。但是,购物车屏幕不是根视图控制器,因此我不能使用[self.navigationController popToRootViewControllerAnimated:YES];。我应该如何做到这一点?人们通常如何做到这一点?

我想到的一些想法是:

1) 维护一个全局变量,即我要弹出的 VC?例如,每当用户进入购物车页面时,我都会将购物车 VC 设置为这个全局变量的值。

2) 一旦我在最后一页,循环遍历导航控制器堆栈上的 VC 堆栈,然后当我找到我想要的类型之一(同一类)时,我会弹出它。

有没有更好的方法来做到这一点?我缺少一些神奇的 API 吗?人们在这种情况下会做什么?

【问题讨论】:

  • 我认为你的第二种方法很好用。

标签: objective-c ios cocoa


【解决方案1】:

用途:

- (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated

也就是说,找到您的购物车对象并将其用作 viewController 参数。

【讨论】:

  • 很久没用Cocoa了,忘了你也可以这样。
猜你喜欢
  • 2015-07-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-25
  • 1970-01-01
  • 2011-10-12
相关资源
最近更新 更多