我有3个视图堆栈,即MyHomeViewController,MySubViewController,MyReplyListViewController。
现在MyHomeViewController是根视图。当我从MySubViewController返回它时,它将我带到MyHomeViewController.as,当我从MyReplyListViewController返回时,它将我带到使用导航控制器的MySubViewController
所以,MyHomeViewController -> MySubViewController -> MyReplyListViewController
现在我想要的是,当用户在应用程序中收到新邮件时。
当用户启动应用程序并且他收到了新的回复时,我想首先显示MyReplyListViewController,当我回来时它必须带我到MySubViewController。 从那里,当我回馈它必须带我到MyHomeViewController
MyReplyListViewController - > MySubViewController - > MyHomeViewController
当他收到新回复时,这只会发生一次。否则它必须表现得很好。
我正在努力实现这一点,但没有运气
感谢您的时间和支持。
答案 0 :(得分:2)
尝试使用UINaviationController
viewControllers
属性和setViewControllers
方法,
@property(nonatomic, copy) NSArray *viewControllers;
- (void)setViewControllers:(NSArray *)viewControllers animated:(BOOL)animated;
<强>更新:强>
对于以下控制器。
MyReplyListViewController -> MySubViewController -> MyHomeViewController
您需要按照上面显示的相反顺序创建viewControllers和数组。
NSArray* myControllerArray = [NSArray arrayWithObjects:rootViewController, subViewController, replyViewController, nil];
将其设置为新的导航堆栈。
[myNavigationController setViewControllers:myControllerArray animated:NO];
现在直接转到MyReplyListViewController
。
[myNavigationController popToViewController:replyViewController animated:YES]