我有以下设置
http://i.minus.com/j6rhBqXOkRRjl.png
当我触摸任一按钮时,相应 targetViewController 的内容应出现在按钮下方的白框中。
这很好用(请参阅下面的代码),但是一旦我将 ParentViewController 包含在 Navigation Controller 中,ViewController 就会使用“First”标签推送到 View,而不是将其添加到 ParentViewController 视图上的框中。
两个 segue 都被定义为“自定义”,那么为什么会发生推送呢?
这是我显示 ViewControllers 的代码:
-(void)swapVC:(UIViewController *)newController{
if(_currentViewController){
[_currentViewController removeFromParentViewController];
}
[self addChildViewController:newController];
[self.contentView addSubview:newController.view];
[newController didMoveToParentViewController:self];
}
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([segue.identifier isEqualToString:@"showFirst"]){
[self swapVC:segue.destinationViewController];
} else if([segue.identifier isEqualToString:@"showSecond"]){
[self swapVC:segue.destinationViewController];
}
}