呈现视图控制器时出现黑屏

时间:2016-03-13 22:30:04

标签: ios objective-c uiview uiviewcontroller

我在故事板中绘制了一个300x350像素的视图,我想在当前视图中显示此视图(600x600像素并且是初始视图控制器),为此我尝试此代码:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
ModalViewController *viewController = (ModalViewController *)[storyboard instantiateViewControllerWithIdentifier:@"modalView"];

viewController.modalPresentationStyle = UIModalPresentationCurrentContext;
viewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;

[self presentViewController:viewController animated:YES completion:^{
    viewController.view.superview.frame = CGRectMake(0, 0, 300, 350);
    viewController.view.superview.center = self.backgroundColorView.center;
}];

此代码有两个问题:

  1. 我的视图以全屏加载,并有一个延迟,将屏幕大小更改为300x350像素。
  2. 在我的观点之外,我可以看到一个黑色的屏幕(在我的情况下应该看起来是我的另一个视图的一部分)。
  3. 我该如何解决这个问题? (我没有使用导航控制器)

1 个答案:

答案 0 :(得分:2)

您需要将modalPresentationStyle更改为overCurrentContex