如何将视图控制器作为全屏从显示为半模式的视图控制器推送

How to push a view controller as a full screen from the view controller presented as a half-modal

提问人:Shiva Reddy 提问时间:9/7/2018 更新时间:9/8/2018 访问量:1036

问:

我正在尝试从视图控制器推送视图控制器,该控制器显示为下半模态。当我尝试推送视图控制器时,它显示在显示的下半视图的范围内。

如何将新的视图控制器作为全屏视图从显示为下半模式的视图控制器推送到导航堆栈上?

iOS iPhone UIDuageController PresentViewController

评论

0赞 DonMag 9/7/2018
使用委托/协议模式...下半视图控制器定义协议;“主视图控制器”符合该协议,并将自身设置为呈现的下半视图的代表;下半部分的按钮点击(或任何操作)告诉其委托执行协议函数。
0赞 Shiva Reddy 9/7/2018
DonMag,这里的问题是推送视图控制器的高度,因为呈现的模态视图控制器推送了一个新的视图控制器,它显示在呈现的下半视图的范围内。
0赞 DonMag 9/7/2018
你有一个导航控制器,是吗?从 NavVC 中的当前 VC 中,您呈现了一个显示在屏幕下半部分的模态 VC,是吗?您希望在该模态 VC 中点击一个按钮,将新的 VC 推送到 NavVC 上,是吗?你想同时解雇模态VC吗?
0赞 Shiva Reddy 9/8/2018
是的,我有一个导航控制器,并展示了一个模态 VC,它显示为屏幕的下半部分。是的,当我点击下半部分时,我想将新的 VC 推到 NavVC 上。不,我不希望模态 VC 被解雇,这应该从这个呈现的模态 VC 中推送任何新的 VC。

答:

0赞 Shiva Reddy 9/8/2018 #1

这是我解决这个问题的方法。

拥有一个全屏和清晰颜色的 Master Vie wController,并向其添加一个子视图控制器(基本上是下半视图或内容视图),然后呈现主视图控制器。由于主视图控制器在推送新视图控制器时处于全屏状态,因此它以全屏显示。内容视图始终是下半部分,我们不必关闭模态视图控制器。