0

我遇到了 UIModalTransitionStyleFlipHorizo​​ntal 的问题,它在过渡时在背景上显示黑屏并显示实际屏幕。

在此处输入图像描述

第一次之后,它显示添加为根视图的最后一个视图。

在此处输入图像描述

实际上我需要实现的是我不想显示黑色和以前的屏幕。它应该显示一个空的屏幕背景,如下图所示。

在此处输入图像描述

我用来实现过渡的代码是

- (void)popViewController {
    UIViewController* rootController = [[UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]] instantiateViewControllerWithIdentifier:@"MainViewController"];

    rootController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
    UINavigationController *navigation = [[UINavigationController alloc]initWithRootViewController:rootController];

    [self.window.rootViewController presentViewController:navigation animated:YES completion:nil];
    [self.window makeKeyAndVisible];
}

我正在使用带有动态 rootview 的故事板。任何人都可以帮我解决它。谢谢

4

2 回答 2

0

删除子视图

在您的方法中添加此代码popViewController

AppDelegate *appDelegate =(AppDelegate *)[[UIApplication sharedApplication]delegate];
NSArray *subViewArray = [appDelegate.window subviews];
for (id obj in subViewArray)
          {
            [obj removeFromSuperview];
          }
于 2016-01-13T10:49:16.757 回答
0

我通过添加带有背景的窗口子视图解决了这个问题。

UIImageView* background = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, self.window.frame.size.width, self.window.frame.size.height)];
background.image = [UIImage imageNamed:@"TermsBg"];
[self.window addSubview:background];
于 2016-01-13T11:50:17.483 回答