我试图在另一个模态视图上呈现透明模态视图。我正在使用故事板。
我已将此添加到我的第一个模态视图中:
self.modalPresentationStyle = UIModalPresentationCurrentContext;
[self performSegueWithIdentifier:@"sendUserMessage" sender:self];
这是我的第二个模态视图(我希望在第一个模态视图中显示第一个透明背景)
// Make the main view's background clear, the second view's background transparent.
self.view.backgroundColor = [UIColor clearColor];
UIView* backView = [[UIView alloc] initWithFrame:self.view.frame];
backView.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.6];
[self.view addSubview:backView];
但似乎我无法与我的用户界面进行交互,以及后屏幕在完全加载后变黑(尽管最初是透明的)。
我认为是因为我是从另一个模态视图中做到的?
答案 0 :(得分:1)
默认情况下,将从窗口中删除呈现视图控制器的视图。
您可以通过将呈现的视图控制器的modalPresentationStyle
设置为UIModalPresentationOverCurrentContext
或UIModalPresentationOverFullScreen
来更改此设置。两者都将屏幕内容保留在屏幕上。
编辑:以上样式都是在iOS 8中引入的。如果您希望呈现视图控制器的视图保留在iOS 7中,您必须使用自定义演示样式并提供{ {3}}