SWRevealViewController - 如何通过点击 and/or 在 Front ViewController 上滑动使菜单消失

SWRevealViewController - How can I make the menu disappear with a tap and/or swipe on FrontViewController

我正在开发定位器地图。如何通过在 Front ViewController 上点击 and/or 滑动使菜单消失。我的前视图控制器显示地图(Google 地图)。

您可以通过将平移手势识别器添加到视图控制器 viewDidLoad: 中的视图,在 SWRevealViewController 中启用滑动手势关闭菜单。

override func viewDidLoad() 
{
    super.viewDidLoad()                 
    view.addGestureRecognizer(myRevealViewController.panGestureRecognizer())
}

让菜单响应点击需要使用点击手势识别器单独处理点击操作。

例如,定义点击手势识别器并将其添加到您的视图中,例如

myTapGestureRecognizer = UITapGestureRecognizer(target: self, action: "closeMenu")
view.addGestureRecognizer(myTapGestureRecognizer)

您可以使用以下函数关闭菜单:

func closeMenu()
{      
    myRevealViewController?.setFrontViewPosition(FrontViewPosition.Left, animated: true)
}

FrontViewPosition.Left 取决于您如何为 SWRevealViewController 配置视图控制器。