Ios 通过UINavigationViewController在同级视图之间切换
我使用NavigationViewController在主视图和详细视图之间导航。现在,我希望能够在不显示主视图的情况下切换到同级详细视图,并且我尝试了使用相同的方法执行popViewController和pushViewController,或者在详细视图中执行popViewController,然后在主视图的viewDidLoad中执行pushViewController,在popViewController之后再执行popViewController,但这不起作用-视图只是返回切换到主视图而不切换到详图。知道怎么办吗 就我所知,此处建议的解决方案不起作用:Ios 通过UINavigationViewController在同级视图之间切换,ios,uinavigationcontroller,Ios,Uinavigationcontroller,我使用NavigationViewController在主视图和详细视图之间导航。现在,我希望能够在不显示主视图的情况下切换到同级详细视图,并且我尝试了使用相同的方法执行popViewController和pushViewController,或者在详细视图中执行popViewController,然后在主视图的viewDidLoad中执行pushViewController,在popViewController之后再执行popViewController,但这不起作用-视图只是返回切换到主视图
我从未尝试过,但这应该可以:
// create instance of new view controller
MyViewController *myViewController = [[MyViewController alloc] init];
// get current stack of viewControllers from navigation controller
NSMutableArray *viewControllers = [[self.navigationController viewControllers] mutableCopy];
// replace top view controller in stack
[viewControllers replaceObjectAtIndex:([viewControllers count] - 1) withObject:myViewController];
// set modified stack of view controllers in navigation controller
[self.navigationController setViewControllers:viewControllers animated:YES];
根据,您的应用程序将通过推送动画转换到新的视图控制器,然后单击“上一步”按钮,就好像您从中推送的视图控制器从未出现过一样。(如果不需要动画,请使用animated:NO
)