2015-04-05 188 views
3

我有一個視圖控制器VC1模式地從其他VC0全屏顯示。在我的故事板中,我有一個從VC1到VC2的模式延續,也呈現在全屏幕上。在我的應用程序中,我可以清楚地看到VC1在VC0上的VC1,因爲它們的某些部分視圖是透明的。完善。但是,我打算重複使用VC2很多次,所以我不想在故事板中爲每個控制器添加一個循環,所以我想以編程方式完成同樣的任務。但是,當我在VC1中調用presentViewController:animated:completion來呈現VC2時,VC1的視圖在模式轉換完成時消失。當VC2被解散時,當過渡動畫完成時,VC1的視圖重新出現。模態視圖控制器上的現有模態視圖控制器

如何以編程方式獲得與使用storyboard segue相同的效果?

回答

8

您需要將提供的控制器的modalPresentationStyle屬性設置爲UIModalPresentationOverFullScreen。在撥打presentViewController:animated:completion之前設置該屬性。

7
let newView = self.storyboard!.instantiateViewControllerWithIdentifier("NewViewController") as! NewViewController 

newView.modalPresentationStyle = UIModalPresentationStyle.OverFullScreen 

self.presentViewController(newView, animated: true, completion: nil)