【问题标题】:SWReveal TabBarController and Nav Bar issueSWReveal TabBarController 和导航栏问题
【发布时间】:2014-09-18 21:15:59
【问题描述】:

我的问题可以在下面的视频中看到:
https://www.dropbox.com/s/cql7r7b49lgffh9/navbarissue.mov

我有以下情节提要设置:

用文字描述问题...当应用程序加载时,它会推送revealviewcont>navcont>tabbarcont>navcont>firstviewcont。在 firstviewcont 上,存在显示菜单按钮。单击此按钮会在表格中显示带有多个选项的滑出菜单。单击第一个单元格将返回到 firstviewcont。但是,当从 menucont 推送 firstviewcont 时,它会在旧导航栏上方创建一个新导航栏,从而呈现两个导航栏。我认为这是因为我要返回堆栈,tabbarcont>navcont>firstviewcont。不支持将 segue 附加到 firstview 的导航控制器,将其附加到 firstviewcont 不会显示 Tab Bar。

我曾尝试在上述视图控制器上隐藏导航栏,但未成功使用 viewwilldisappear 和 viewwillappear 方法...如何在保留标签栏并仅显示一个导航栏的同时实现返回到 firstviewcont?

【问题讨论】:

    标签: ios uinavigationcontroller uinavigationbar uistoryboardsegue swrevealviewcontroller


    【解决方案1】:

    我尝试使用标识符为“sw_front”的 SWRevealViewControllerSegueSetController 并通过删除旧的导航控制器将嵌入导航控制器应用到视图控制器,然后它工作正常 iOS 11。如果您想要前/中心视图的导航栏,请将导航控制器添加到您的视图控制器并将 segue 连接到导航控制器,以便它在前视图或后视图上显示导航栏。

    【讨论】:

      【解决方案2】:

      我通过阅读 SWRevealViewController.h 文件上的更改日志解决了这个问题。

      - Took a cleaner approach to storyboard support. SWRevealViewControllerSegue is now 
      deprecated and you should use SWRevealViewControllerSegueSetController and 
      SWRevealViewControllerSeguePushController instead.
      

      将我的 segue 更改为新版本的 storyboard segue 解决了我的问题。

      感谢 John LLuch 提供了一个很棒的子类!

      【讨论】:

        猜你喜欢
        • 2011-05-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多