所以我在情节提要中有 3 个视图控制器(VC1、VC2 和 VC3)。
每个视图都有一个调用 IBAction 的按钮,它调用此方法以模态到另一个视图:
[self doSegue: myViewController_ID];
-(void) doSegue:(NSString *)_myViewController_ID
{
//get UiViewController from storybord with Unique ID
UIStoryboard *storyboard = self.storyboard;
UITableViewController *svc = [storyboard instantiateViewControllerWithIdentifier:_myViewController_ID];
//set presentation & transition styles
svc.modalPresentationStyle = UIModalPresentationFullScreen;
svc.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
//do segue
[self presentViewController:svc animated:YES completion:nil];
}
让我们设置我从 VC1 到 VC2,一次在 VC2
我想要的是删除以前的 ViewController (VC1)。如果我现在从 VC2 转到 VC3,我想从视图层次结构或堆栈 VC2 中删除,依此类推。
这是因为我不会提供[self dismissViewControllerAnimated:YES completion:nil];
方法
我不希望由于堆栈中所有视图控制器的积累而导致内存增长。
注意:我不会使用导航控制器或选项卡控制器,只使用视图控制器。
谢谢你的帮助。