【问题标题】:How to make SWRevealViewController cover the main view not push it?如何让 SWRevealViewController 覆盖主视图而不是推送它?
【发布时间】:2017-05-30 23:19:20
【问题描述】:

我正在关注本教程Customize your SWRevealViewController slide-out menu

这是应用程序的布局,也是 SWReveal 推送主视图的方式

但 Gmail 的工作方式是像这张照片一样覆盖主视图

我想知道是否可以使用 SWRevealViewController 制作 silde-out 菜单覆盖 Gmail 应用程序等主视图以及如何做到这一点?

【问题讨论】:

  • 您的问题未解。
  • @the_dahiya_boy 看看

标签: swift3 customization ios10 swrevealviewcontroller


【解决方案1】:

方法是将“主”视图控制器设置为后视图控制器(静态,不移动),将“侧边栏”设置为前视图控制器(在顶部滑动,可选透明)。根据我对您想要实现的目标的理解,这就是您所需要的。

【讨论】:

    【解决方案2】:
    【解决方案3】:

    假设只剩下左侧菜单部分,并且菜单在按钮单击时滑动。

    按照以下步骤操作:

    1. 在您的storyboard 中添加新的UIViewController
    2. 执行此操作 a) 添加新的UIView,大小为UIViewController(viewBG 表示)。 b) 现在转到属性并根据您减少viewBG 的不透明度,不要玩alpha 值。 c) 再查看一次左侧菜单(如 viewMenu)。

    3. 将您的 menuVC 添加为您的 MainVC 的子 VC。

    4. 现在要显示菜单时使用下面的行代码。

    menuVC.view.frame = CGRect(x : -self.view.frame.size.width, y : 0, width : menuVC.view.frame.size.width, height: self.view.frame.size.height) UIView.animate(withDuration: 0.5) { menuVC.view.frame = CGRect(x : 0, y : 0, width : menuVC.view.frame.size.width, height: self.view.frame.size.height) }

    1. 删除菜单

    menuVC.view.frame = CGRect(x : 0, y : 0, width : menuVC.view.frame.size.width, height: self.view.frame.size.height) UIView.animate(withDuration: 0.5) { menuVC.view.frame = CGRect(x : -self.view.frame.size.width, y : 0, width : menuVC.view.frame.size.width, height: self.view.frame.size.height) }

    希望:你可以给你的视图施加限制。

    【讨论】:

    • 这不是 SWRevealViewController 库!
    • 不,不是,但可以像这样创建相同的侧视图。而且我从来没有使用过 SWRevealVC,所以我没有关于它的信息。我只是在这里写下我的方法。要么你可以这样做,对于 SW 需要其他人的帮助,:(
    猜你喜欢
    • 2015-09-05
    • 2015-11-13
    • 2015-06-26
    • 2021-05-05
    • 1970-01-01
    • 1970-01-01
    • 2016-02-01
    • 1970-01-01
    • 2013-12-26
    相关资源
    最近更新 更多