MMDrawerController第三方抽屜褲 如何開啟和關閉側滑
1.首先按住command點選MMDrawerController 進入其.h檔案,在.h檔案中新增可讀寫的BOOL型函式。
@property (nonatomic,assign)BOOL XZBBOOL;
2.在進入MMDrawerController.m檔案 找到
-(BOOL)isPointContainedWithinCenterViewContentRect:(CGPoint)point 此函式整體換為下面的函式
替換為:
-(BOOL)isPointContainedWithinCenterViewContentRect:(CGPoint)point{
CGRect
centerViewContentRect = CGRectIntersection(centerViewContentRect,self.childControllerContainerView.bounds);
if (self.XZBBOOL) {
return (CGRectContainsPoint(centerViewContentRect, point) &&[self isPointContainedWithinNavigationRect
}else{
return NO;
}
}
3.在你使用時 得到MMDrawerController的指標
例如剛建立時
MMDrawerController * drawerController = [[MMDrawerControlleralloc]
initWithCenterViewController:_mainViewController
leftDrawerViewController
rightDrawerViewController:nil];
drawerController.XZBBOOL = YES;//設為YES是可以側滑
如果在二級介面甚至三級介面,會有手勢衝突這時我們可以如下:
注:可以給所有的二級甚至三級介面共同期繼承一個基類,在基類中實現。 當返回到一級介面別忘了再重新開啟呦!
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
AppDelegate *app = (AppDelegate *)[UIApplicationsharedApplication].delegate;
MMDrawerController * drawerController = (MMDrawerController *)app.window.rootViewController;
drawerController.XZBBOOL = NO;
}