有没有办法将视图控制器推送到导航控制器而不进行堆叠?
通缉行为(堆栈表示):
[VC1 [VC2]] - >从VC2推送VC3 - > [VC1 [VC3]]
是的,只是弹出另一个(没有动画这个)像这样:
[navController popViewControllerAnimated:NO] [navController pushViewController:VC3 animated:YES]
或者选择选项2,这更通用:替换viewControllers属性:
NSArray *newControllers = @[VC1, VC3]; [navController setViewControllers:newControllers animated:YES];
要么...
NSArray *newControllers = @[navController.viewControllers[0], VC3]; [navController setViewControllers:newControllers animated:YES];
我会使用UINavigationController的方法:
- (void)setViewControllers:(NSArray *)viewControllers animated:(BOOL)animated
这样你可以这样做:
UINavigationController *navigationController = [self navigationController]; [navigationController setViewControllers:@[navigationController.viewControllers[0], VC3] animated:YES];
这将为新视图控制器(VC3)提供推送动画 .
2 回答
是的,只是弹出另一个(没有动画这个)像这样:
或者选择选项2,这更通用:替换viewControllers属性:
要么...
我会使用UINavigationController的方法:
这样你可以这样做:
这将为新视图控制器(VC3)提供推送动画 .