首页 > 编程 > Swift > 正文

swift4 使用DrawerController实现侧滑菜单功能的示例代码

2020-03-09 17:31:37
字体:
来源:转载
供稿:网友

本文介绍了swift4 使用DrawerController实现侧滑功能的示例代码,分享给大家,具体如下:

直接上图

swift4,DrawerController,侧滑菜单,代码

安装

类库开源地址:https://github.com/sascha/DrawerController

可惜的是,它已经不维护了,很好用的一个侧滑实现

pod 'DrawerController'

新建侧滑视图

import UIKit// 这个类就是一个 UIViewController 可以在里面写任何你想写的东西class LeftViewController: UIViewController {  override func viewDidLoad() {    super.viewDidLoad()    self.title = "Left Menu"    self.view.backgroundColor = .white  }  override func didReceiveMemoryWarning() {    super.didReceiveMemoryWarning()    // Dispose of any resources that can be recreated.  }}

修改 AppDelegate 类

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {      let drawerController = DrawerController(centerViewController: UINavigationController(rootViewController: ViewController()), leftDrawerViewController: UINavigationController(rootViewController: LeftViewController()))    // 侧滑打开宽度  drawerController.maximumLeftDrawerWidth = 250  // 打开侧滑手势  drawerController.openDrawerGestureModeMask = .all  // 关闭侧滑手势  drawerController.closeDrawerGestureModeMask = .all    self.window?.rootViewController = drawerController  return true}

Navigation上添加按钮

修改 ViewController

import UIKitclass ViewController: UIViewController {  override func viewDidLoad() {    super.viewDidLoad()    self.title = "DrawerDemo"    self.view.backgroundColor = .white        // 给导航条添加一个按钮    self.navigationItem.leftBarButtonItem = UIBarButtonItem(image: UIImage(named: "baseline-menu-48px"), style: .plain, target: self, action: #selector(ViewController.openLeftMenu))        self.navigationController?.navigationBar.barStyle = .default    // menu icon默认是蓝色,下面将其改成黑色的    self.navigationController?.navigationBar.tintColor = .black  }    @objc func openLeftMenu() {    // 打开drawerController    self.navigationController?.evo_drawerController?.toggleLeftDrawerSide(animated: true, completion: nil)  }  override func didReceiveMemoryWarning() {    super.didReceiveMemoryWarning()    // Dispose of any resources that can be recreated.  }}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持VEVB武林网。


注:相关教程知识阅读请移步到swift教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表