我试图在另一个模态视图上呈现一个透明的模态视图。我正在使用情节提要。
我已将此添加到我的第一个模式视图:
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];
但是似乎我无法与UI进行交互,并且在完全加载后,后屏幕变黑(尽管起初是透明的)。
我认为这是因为我正在从另一个模式视图进行操作?
最佳答案
当前视图控制器的视图将默认从窗口中删除。
您可以通过将显示的视图控制器的modalPresentationStyle
设置为UIModalPresentationOverCurrentContext
或UIModalPresentationOverFullScreen
来更改此设置。两者都将覆盖内容显示在屏幕上。
编辑:以上样式在iOS 8中均已引入。如果您希望呈现视图控制器的视图在iOS 7中保持不变,则必须使用“自定义”呈现样式并提供transitioningDelegate。
关于ios - 从另一个模态视图中呈现透明模态视图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26412822/