ios开发中超简单抽屉效果(MMDrawerController)的实现
ios开发中,展示类应用通常要用到抽屉效果,由于项目需要,本人找到一个demo,缩减掉一些不常用的功能,整理出一个较短的实例。
首先需要给工程添加第三方类库
MMDrawerController:
![](data:<;base64,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)
这里讲的实例只加入了左滑抽屉。右滑和左滑只是初始化时多添加一个右视图控制器,其他方法基本相同。
下面是用手势实现抽屉的拉出和收回
1.初始化跟视图控制器时,在AppDelegate中导入头文件
#import "MMDrawerController.h"
2.初始化方法先初始化左视图和中心视图,也就是图中的
BoutiqueCollectionViewController
LeftDrawerTableViewController
3.初始化完两个子视图控制器后,初始化抽屉根视图控制器MMDrawerController,初始化抽屉控制器时需要将左视图控制器和中心视图控制器添加到抽屉视图控制器上。
//CollectionView的样式
UICollectionViewFlowLayout * flowLayout = [[UICollectionViewFlowLayout alloc] init];
//初始化中心视图
BoutiqueCollectionViewController * boutiqueCVC = [[BoutiqueCollectionViewController alloc] initWithCollectionViewLayout:flowLayout];
boutiqueCVC.collectionView.backgroundColor = [UIColor whiteColor];
UINavigationController * boutiqueNC = [[UINavigationController alloc] initWithRootViewController:boutiqueCVC];
//初始化左视图
LeftDrawerTableViewController * leftTVC = [[LeftDrawerTableViewController alloc] init];
UINavigationController * leftNC = [[UINavigationController alloc] initWithRootViewController:leftTVC];
//初始化抽屉视图控制器
MMDrawerController * drawerController = [[MMDrawerController alloc] initWithCenterViewController:boutiqueNC leftDrawerViewController:leftNC];
//设置抽屉抽出的宽度
drawerController.maximumLeftDrawerWidth = 200;
4.初始化完成之后添加滑动手势,通过滑动手势拉出和收回抽屉。手势封装在第三方类库中,程序如下。
//滑动手势快关抽屉
[drawerController setOpenDrawerGestureModeMask:MMOpenDrawerGestureModeAll];
[drawerController setCloseDrawerGestureModeMask:MMCloseDrawerGestureModeAll];
self.window.rootViewController = drawerController;
到此,将抽屉根视图控制器添加到window的根视图控制器上,运行程序,就可以实现用手势来控制抽屉的拉出和收回。
如果需要用按钮控制拉出和收回抽屉,需要加上下面的部分。
1.在中心视图控制器中添加头文件
#import "UIViewController+MMDrawerController.h"//第三方封装的头文件
#import "MMDrawerBarButtonItem.h"//第三方封装的头文件
#import "LeftDrawerTableViewController.h"、、左视图头文件
2.在viewDidLoad中实现添加左抽屉控制按钮的方法
[self setupLeftMenuButton];//在viewDidLoad中实现添加左抽屉控制按钮的方法
3.在下面实现添加按钮的方法
-(void)setupLeftMenuButton
{
//创建按钮
MMDrawerBarButtonItem * leftDrawerButton = [[MMDrawerBarButtonItem alloc] initWithTarget:self action:@selector(leftDrawerButtonPress:)];
//为navigationItem添加LeftBarButtonItem
[self.navigationItem setLeftBarButtonItem:leftDrawerButton animated:YES];
}
4.在下面实现抽屉按钮的动作方法。
//抽屉按钮动作
-(void)leftDrawerButtonPress:(id)sender
{
//开关左抽屉
[self.mm_drawerController toggleDrawerSide:MMDrawerSideLeft animated:YES completion:nil];
}
这里讲的实例只加入了左滑抽屉。右滑和左滑只是初始化时多添加一个右视图控制器,其他方法基本相同。
下面是用手势实现抽屉的拉出和收回
1.初始化跟视图控制器时,在AppDelegate中导入头文件
#import "MMDrawerController.h"
2.初始化方法先初始化左视图和中心视图,也就是图中的
BoutiqueCollectionViewController
LeftDrawerTableViewController
3.初始化完两个子视图控制器后,初始化抽屉根视图控制器MMDrawerController,初始化抽屉控制器时需要将左视图控制器和中心视图控制器添加到抽屉视图控制器上。
//CollectionView的样式
UICollectionViewFlowLayout * flowLayout = [[UICollectionViewFlowLayout alloc] init];
//初始化中心视图
BoutiqueCollectionViewController * boutiqueCVC = [[BoutiqueCollectionViewController alloc] initWithCollectionViewLayout:flowLayout];
boutiqueCVC.collectionView.backgroundColor = [UIColor whiteColor];
UINavigationController * boutiqueNC = [[UINavigationController alloc] initWithRootViewController:boutiqueCVC];
//初始化左视图
LeftDrawerTableViewController * leftTVC = [[LeftDrawerTableViewController alloc] init];
UINavigationController * leftNC = [[UINavigationController alloc] initWithRootViewController:leftTVC];
//初始化抽屉视图控制器
MMDrawerController * drawerController = [[MMDrawerController alloc] initWithCenterViewController:boutiqueNC leftDrawerViewController:leftNC];
//设置抽屉抽出的宽度
drawerController.maximumLeftDrawerWidth = 200;
4.初始化完成之后添加滑动手势,通过滑动手势拉出和收回抽屉。手势封装在第三方类库中,程序如下。
//滑动手势快关抽屉
[drawerController setOpenDrawerGestureModeMask:MMOpenDrawerGestureModeAll];
[drawerController setCloseDrawerGestureModeMask:MMCloseDrawerGestureModeAll];
self.window.rootViewController = drawerController;
到此,将抽屉根视图控制器添加到window的根视图控制器上,运行程序,就可以实现用手势来控制抽屉的拉出和收回。
如果需要用按钮控制拉出和收回抽屉,需要加上下面的部分。
1.在中心视图控制器中添加头文件
#import "UIViewController+MMDrawerController.h"//第三方封装的头文件
#import "MMDrawerBarButtonItem.h"//第三方封装的头文件
#import "LeftDrawerTableViewController.h"、、左视图头文件
2.在viewDidLoad中实现添加左抽屉控制按钮的方法
[self setupLeftMenuButton];//在viewDidLoad中实现添加左抽屉控制按钮的方法
3.在下面实现添加按钮的方法
-(void)setupLeftMenuButton
{
//创建按钮
MMDrawerBarButtonItem * leftDrawerButton = [[MMDrawerBarButtonItem alloc] initWithTarget:self action:@selector(leftDrawerButtonPress:)];
//为navigationItem添加LeftBarButtonItem
[self.navigationItem setLeftBarButtonItem:leftDrawerButton animated:YES];
}
4.在下面实现抽屉按钮的动作方法。
//抽屉按钮动作
-(void)leftDrawerButtonPress:(id)sender
{
//开关左抽屉
[self.mm_drawerController toggleDrawerSide:MMDrawerSideLeft animated:YES completion:nil];
}