我正在关注本教程Customize your SWRevealViewController slide-out menu
这是应用程序的布局,这是SWReveal如何推送主视图
但Gmail的工作方式是覆盖像这张照片的主视图
我想知道我是否可以使用SWRevealViewController覆盖像Gmail应用程序这样的主视图以及如何操作这个silde-out菜单?
答案 0 :(得分:0)
假设只剩下左侧菜单部分并且按钮上的菜单正在滑动。
按照以下步骤操作:
UIViewController
。storyboard
这样做
a)添加大小为UIView
的新UIViewController
(表示为viewBG)。
b)现在转到属性并根据您减少viewBG
不透明度,不要使用alpha值。
c)再看一下左侧菜单(viewMenu)。
将menuVC
添加为MainVC
的儿童VC。
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)
}
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)
}
HOPE:您可以为视图提供约束。
答案 1 :(得分:0)
我的问题的正确答案是打开这个问题: How to make SWRevealViewController works like covering the main view not as default pushing the main view ? #669
答案 2 :(得分:0)
方法是将“主”视图控制器设置为rearViewController(静态,不移动),将“侧栏”设置为frontViewController(在顶部滑动,可选择透明)。根据我对你想要实现的目标的理解,这就是你所需要的。