4

我正在使用presentModalViewController:animated:虽然功能上它在视觉上可以正常工作,但它有一个我想要删除的工件。当模态呈现的 viewController 出现时,它的父 viewController 完全隐藏,背景变黑。这不是我想要的。我的子 viewController 的视图是半透明的,我想显示它背后的父 viewControllers 视图。我想要的效果是一张在背景上滑动的描图纸。

我假设presentModalViewController:animated:支持这个。不是这样吗?

谢谢,
道格

4

3 回答 3

9

NavigationController视图控制器的设计方式是一次只能显示一个视图控制器。当一个新的视图控制器被推送/呈现时,之前的视图控制器将被系统隐藏。因此,当您减少模态视图的alpha时,您可能会看到窗口的 backgroundColor(您现在看到的黑色)。

如果您希望半透明视图滑入主视图,您可以将视图添加为主视图的子视图并使用UIView Animations对其进行动画处理。

于 2011-08-31T12:14:05.833 回答
8

这可能会得到你想要的:

presentingViewController.modalPresentationStyle = UIModalPresentationCurrentContext;
于 2011-11-29T20:50:21.480 回答
2

presentingViewController.modalPresentationStyle = UIModalPresentationCurrentContext; ios7之后就不行了,你可以在之后修复

presentingViewController.modalPresentationStyle = UIModalPresentationOverCurrentContext;
presentingViewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;

然后两者: [appViews.rootViewController presentViewController:presentingViewController animated:YES completion:nil];

于 2016-08-04T04:03:05.903 回答