导航控制器上的透明模态视图

我正在尝试在导航控制器之上创建一个透明的模态视图。有人知道这是否可能吗?



弑天下
浏览 586回答 3
3回答

犯罪嫌疑人X

最简单的方法是使用modalPresentationStyle财产navigationController(但你必须自己做动画):self.navigationController.modalPresentationStyle = UIModalPresentationCurrentContext;[self presentModalViewController:modalViewController animated:NO];modalViewController.view.alpha = 0;[UIView animateWithDuration:0.5 animations:^{    modalViewController.view.alpha = 1;}];

手掌心

通过设置位于窗口或根视图的所有其他子视图上方的“ OverlayViewController”,我可以最轻松地完成此操作。在应用程序委托或根视图控制器中进行设置,并使OverlayViewController为单例,以便可以从代码或视图控制器层次结构中的任何位置对其进行访问。然后,您可以在任何需要的时候调用方法以显示模式视图,显示活动指示符等,它们可能会覆盖任何选项卡栏或导航控制器。根视图控制器的示例代码:- (void)viewDidLoad {  OverlayViewController *o = [OverlayViewController sharedOverlayViewController];  [self.view addSubview:o.view];}您可能用来显示模式视图的示例代码:[[OverlayViewController sharedOverlayViewController] presentModalViewController:myModalViewController animated:YES];我实际上并未-presentModalViewController:animated:与OverlayViewController一起使用,但我希望这会很好。
打开App,查看更多内容
随时随地看视频慕课网APP