UIModalPresentationOverFullScreen允许与下面的视图控制器进行交互

时间:2015-03-12 23:18:02

标签: ios objective-c

我有一个主页视图控制器。最重要的是,我提出了一个像抽屉一样的视图控制器,并将该控制器的视图移动到屏幕外。模态抽屉视图控制器有一个导航栏。您可以在抽屉下方看到大部分主页视图。点击后,那个"抽屉"打开成为全屏,包括导航栏。

在ios7中,我将呈现视图控制器的modalPresentationStyle设置为UIModalPresentationCurrentContext。在ios8中,我将呈现的视图控制器的modalPresentationStyle设置为UIModalPresentationOverFullScreen。这就是它必须要做的事情。

    if ([PCDeviceManager isDeviceiOS7]) {
        AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
        appDelegate.window.rootViewController.modalPresentationStyle = UIModalPresentationCurrentContext;
    } else {
         projectsVC.modalPresentationStyle = UIModalPresentationOverFullScreen;
    }

    [self presentViewController:projectsVC animated:NO completion:^{
        CGRect frame = projectsVC.view.frame;
        frame.origin.y = self.view.frame.size.height - 45;
        [projectsVC.view setFrame:frame];
    }];

在ios7和8中,滑动过渡正是我想要的,导航栏一直到屏幕顶部,位于状态栏下方。

但是,在ios7中,我能够与主页视图控制器视图中的子视图进行交互。在ios8中,我不能......我需要能够与主页上的表视图进行交互。抽屉没有覆盖桌子,但它们位于不同的视图控制器中。

它在ios7中工作 - 我可以与主屏幕上的表进行交互。我怎样才能在ios8上完成这项工作?

编辑:抽屉的图像打开和关闭:

https://www.dropbox.com/s/5p3bqpygyoe1fdi/drawer.png?dl=0 https://www.dropbox.com/s/sml60bi0iqxmwzj/drawer%20open.png?dl=0

0 个答案:

没有答案