写了一个项目中经常会用到的侧拉菜单,使用方法很简单,把自定义的view初始化传入即可。
override func viewDidLoad() {
        super.viewDidLoad()
        
        menuTableview.register(UITableViewCell.self, forCellReuseIdentifier: "cell")
        
        //自定义view
        let view = UIView(frame: CGRect.init(x: 0, y: 0, width: 250.0, height: UIScreen.main.bounds.height))
        view.backgroundColor = UIColor.blue
        view.addSubview(menuTableview)
        
        //创建侧拉菜单
        sidebar = DCSidebar(sideView: view)
        //设置动画的开始和结束时间
        sidebar?.showAnimationsTime = 0.2
        sidebar?.hideAnimationsTime = 0.2
    }
    @IBAction func showButtonTouchUpInside(_ sender: Any) {
        //显示侧拉菜单
        sidebar?.show()
    }
    
    @IBAction func screenEdgePanGesture(_ sender: UIScreenEdgePanGestureRecognizer) {
        if sender.state == .ended {
            sidebar?.show()
        }
    }
效果图

点击收起

拖出菜单

拖动的动画效果