presentViewController正在移动我的rootViewController

时间:2013-09-19 06:51:42

标签: iphone ios objective-c uiviewcontroller statusbar

我想知道是否有人对我遇到的问题有所了解!

我有一个简单的viewController,带有自定义的appDelegate.window.frame(0,20,width,height),带有自己的navigationController。我实现了一个UIButton,它提供了一个空的视图控制器。

UIViewController *v = [_controllersList objectAtIndex:indexPath.row];
        v.modalPresentationStyle = UIModalPresentationCurrentContext;
        [self presentViewController:v animated:YES completion:nil]; 

到现在为止,一切正常。如果我提出那个新的控制器(一切都很好!)。当我关闭新视图时,我的原始视图控制器框架已经以图形方式更改,但未以编程方式更改!

(结果是我的窗户被粘在视图的顶部,并被裁剪,底部有20个黑色像素)。

4 个答案:

答案 0 :(得分:4)

对我来说,解决方案是更改默认的modalPresentationStyle属性:

v.modalPresentationStyle = UIModalPresentationOverFullScreen;

希望它有所帮助。

答案 1 :(得分:1)

您可以从窗口rootviewcontroller

中显示视图控制器
[self.view.window.rootViewController presentViewController:v animated:YES completion:nil];

答案 2 :(得分:0)

检查自动布局选项。可能是自动布局的问题。

答案 3 :(得分:-1)

此解决方案将解决您的问题,当您关闭视图时,将出现视图,每次都会调用。

-(void)viewWillAppear:(BOOL)animated {  

  self.view.frame = [[UIApplication sharedApplication].keyWindow bounds];
}