抱歉,如果我的标题太恐怖了,我正在尝试创建一个导航控制器,它像ios中的邮件一样弹出,如下所示:
可以在父ViewController内设置两个ViewController(一个看起来像邮件,一个在他身后),然后设置一个简单的解决方案(因此,它在编程上可能不是最正确的,我不确定)。
我很快完成了一些操作:
这两个ViewController都可以正常工作,当然您可以禁用最下面的一个,并在图像中设置一个灰色视图。
代码:
在底部的ViewController内部,使用要推送的ViewController创建一个新的NavigationController,然后将其添加为第一个的孩子:
nav = [[UINavigationController alloc] initWithRootViewController:[VcWithNavViewController new]];
[nav.view setFrame:CGRectMake(self.view.bounds.origin.x, self.view.bounds.size.height, self.view.bounds.size.width, 500)];
[self addChildViewController:nav];
[self.view addSubview:nav.view];
[nav didMoveToParentViewController:self];
然后在适当的时候将那个孩子的视图动画到屏幕上:
- (void) popViewController {
[UIView animateWithDuration:2 delay:5 options:UIViewAnimationOptionCurveEaseInOut animations:^{
[nav.view setFrame:CGRectMake(0, 200, self.view.bounds.size.width, 500)];
} completion:nil];
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句